Casa Sviluppo Che cos'è un dominio applicazione in .net? - definizione da techopedia

Che cos'è un dominio applicazione in .net? - definizione da techopedia

Sommario:

Anonim

Definizione: cosa significa dominio applicazione?

Un dominio applicazione è un limite di isolamento logico creato attorno alle applicazioni .NET in modo che le applicazioni non si accedano o si influenzino a vicenda. È un processo leggero con un proprio set di codice, dati e impostazioni di configurazione. I domini dell'applicazione vengono creati dagli host di runtime, che vengono richiamati da Common Language Runtime (CLR) per caricare le applicazioni che devono essere eseguite.


Prima di .NET, il limite di isolamento tra le applicazioni era rappresentato dai processi in cui venivano caricate. Ogni processo aveva la propria memoria virtuale privata e non può accedere direttamente alla memoria di un altro processo. Il dominio dell'applicazione ha caratteristiche simili a quelle di un processo.


I domini dell'applicazione hanno le seguenti funzionalità:

  1. Utilizzo ottimale delle risorse di sistema utilizzando meno processi per eseguire più applicazioni.
  2. Affidabilità usando l'isolamento delle attività in situazioni in cui i dati non possono essere condivisi e per attività instabili che devono essere scaricate senza influire sul processo.
  3. Migliore efficienza eseguendo processi di lunga durata che raramente utilizzano estensioni di grandi dimensioni con memoria ottimale.
  4. Sicurezza dell'applicazione limitando l'accesso diretto al codice in esecuzione in un'applicazione dal codice o dalle risorse di un'altra applicazione.
  5. Controllo di sicurezza specificando i dettagli di configurazione per ciascun dominio dell'applicazione.

Techopedia spiega Application Domain

Il dominio dell'applicazione differisce nel modo in cui CLR carica ed esegue più applicazioni .NET in un unico processo. Non consente l'accesso diretto alla memoria delle applicazioni caricate. È gestito dal CLR di .NET Framework mentre un processo è gestito dal sistema operativo. Il CLR fornisce l'isolamento degli errori tra domini applicativi con un sovraccarico minore rispetto ai processi, grazie alla sua caratteristica intrinseca di sicurezza del tipo verificabile del codice gestito. Inoltre, più thread possono risiedere in un dominio dell'applicazione, sono liberi di oltrepassare i confini del dominio dell'applicazione.


Ad esempio, ASP.NET è un host di runtime che crea più domini di applicazione per ciascun utente che accede a un sito Web. Possono anche essere creati e configurati per le applicazioni che devono isolare il codice o caricare le estensioni solo durante il loro utilizzo. Questo fatto rende utili i domini delle applicazioni in situazioni in cui vengono utilizzati plug-in e altro codice non attendibile. Sono inoltre utili per ridurre al minimo il set di applicazioni funzionante che utilizzano DLL di grandi dimensioni.


Per abilitare la comunicazione tra oggetti in diversi domini applicativi viene utilizzato uno dei seguenti tre tipi di oggetti:

  1. Maresciallo per valore: copia completa dell'oggetto passato al dominio dell'applicazione chiamante. Viene utilizzato quando lo stato dell'oggetto può essere spostato per motivi di prestazioni.
  2. Marshal-By-Reference-Reference (MBR): un proxy dell'oggetto viene passato al client; utilizzato quando lo stato dell'oggetto deve rimanere all'interno del dominio dell'applicazione.
  3. Associato al contesto: oggetto MBR utilizzato tra domini o nel contesto del proprio dominio applicazione.
Questa definizione è stata scritta nel contesto di .NET
Che cos'è un dominio applicazione in .net? - definizione da techopedia