Condividi tramite


Cenni preliminari su .NET Framework Remoting

.NET Remoting consente di generare facilmente applicazioni distribuite, indipendentemente dal fatto che i componenti dell'applicazione siano tutti residenti sullo stesso computer o siano dislocati a livello internazionale. E` possibile generare applicazioni client in cui si utilizzino oggetti di altri processi nello stesso computer o in qualsiasi altro computer disponibile sulla rete. .NET Remoting puo` essere utilizzato anche per comunicare con altri domini di applicazione nello stesso processo. Per ulteriori informazioni sulla programmazione dei domini di applicazione, vedere Programming with Application Domains.

.NET Remoting prevede un approccio astratto alla comunicazione interprocesso che separa l'oggetto remotizzabile da uno specifico dominio di applicazione client o server e da uno specifico meccanismo di comunicazione. Di conseguenza, e` flessibile e facilmente personalizzabile. E` possibile sostituire i protocolli di comunicazione o i formati di serializzazione senza dover ricompilare il client o il server. Il sistema .NET Remoting, inoltre, non presuppone alcun modello di applicazione in particolare. Per la comunicazione e` possibile utilizzare un'applicazione Web, un'applicazione console, un servizio per Windows e un numero quasi illimitato di altre opzioni. Anche i server .NET Remoting possono essere rappresentati da qualsiasi tipo di dominio di applicazione. Tutte le applicazioni possono ospitare oggetti remoti e fornire servizi a tutti i client del computer o della rete.

Nota

Per una maggiore protezione, e` consigliabile esporre gli endpoint di .NET Remoting su canali protetti e di non esporli mai non protetti su Internet.

Per generare con .NET Remoting un'applicazione in cui due componenti possano comunicare direttamente oltre il limite di un dominio di applicazione, e` sufficiente generare i seguenti elementi:

  • Un oggetto remotizzabile.

  • Un dominio di applicazione host per attendere richieste per l'oggetto.

  • Un dominio di applicazione client che effettua richieste per l'oggetto.

.NET Remoting puo` essere inteso in questo senso anche in un'applicazione complessa multiclient o multiserver. L'applicazione host e l'applicazione client, inoltre, devono essere configurate con l'infrastruttura di .NET Remoting ed e` necessario comprendere i problemi di durata e di attivazione che quest'ultima pone.

In questa sezione

  • Canali
    Vengono descritti i canali definiti dal sistema e vengono fornite le informazioni necessarie per scegliere il canale ottimale per un determinato scenario.
  • Configurazione di applicazioni remote
    Vengono descritti i principali requisiti di configurazione dell'infrastruttura di .NET Remoting, i tipi di configurazione utilizzabili per soddisfare tali requisiti e le esigenze specifiche di vari domini di applicazione client e server.
  • Protezione in .NET Remoting
    Vengono descritti i requisiti di protezione relativi all'utilizzo di .NET Remoting e i criteri di base per generare applicazioni .NET Remoting protette.

Riferimenti

  • Remoting Settings Schema
    Vengono fornite informazioni di riferimento sugli elementi utilizzabili per configurare .NET Remoting mediante un file di configurazione.
  • System.Runtime.Remoting
    Vengono fornite informazioni di riferimento sui tipi utilizzabili per eseguire .NET Remoting.
  • System.Runtime.Remoting.Channels
    Contiene classi che supportano e consentono la gestione di canali e sink di canale, utilizzati come mezzo di trasporto quando un metodo su un oggetto remoto viene chiamato da un client.
  • System.Runtime.Remoting.Channels.Ipc
    Contiene classi che definiscono un canale di comunicazione per .NET Remoting che utilizza il sistema di comunicazione interprocesso (IPC, Interprocess Communication) del sistema operativo Windows.
  • System.Runtime.Remoting.Channels.Tcp
    Contiene classi che definiscono i canali che utilizzano il protocollo TCP per il trasporto di messaggi e oggetti da e verso posizioni remote.

Sezioni correlate

  • Opzioni avanzate di .NET Remoting
    Vengono descritti gli aspetti di base dell'intercettazione e dell'estensione, utilizzabili per personalizzare l'architettura di .NET Remoting.
  • Esempi di codice di .NET Remoting
    Vengono fornite numerose applicazioni di esempio complete in cui sono utilizzati diversi elementi dell'infrastruttura di .NET Remoting.