Huis Ontwikkeling Wat is een toepassingsdomein in .net? - definitie van techopedia

Wat is een toepassingsdomein in .net? - definitie van techopedia

Inhoudsopgave:

Anonim

Definitie - Wat betekent toepassingsdomein?

Een toepassingsdomein is een logische isolatiegrens die rondom .NET-toepassingen wordt gecreëerd, zodat toepassingen geen toegang tot elkaar hebben of elkaar beïnvloeden. Het is een lichtgewicht proces met zijn eigen set code, gegevens en configuratie-instellingen. Toepassingsdomeinen worden gemaakt door de runtime-hosts, die worden aangeroepen door de Common Language Runtime (CLR) om de toepassingen te laden die moeten worden uitgevoerd.


Vóór .NET was de isolatiegrens tussen applicaties de processen waarin ze werden geladen. Elk proces had zijn eigen privé virtueel geheugen en heeft geen rechtstreeks toegang tot het geheugen van een ander proces. Toepassingsdomein heeft kenmerken die vergelijkbaar zijn met die van een proces.


Toepassingsdomeinen hebben de volgende kenmerken:

  1. Optimaal gebruik van systeembronnen door minder processen te gebruiken om meerdere applicaties uit te voeren.
  2. Betrouwbaarheid door isolatie van taken in situaties waarin gegevens niet kunnen worden gedeeld en voor onstabiele taken die moeten worden gelost zonder het proces te beïnvloeden.
  3. Betere efficiëntie door langlopende processen uit te voeren die zelden grote extensies met optimaal geheugen gebruiken.
  4. Applicatiebeveiliging door de directe toegang tot de code die in een applicatie wordt uitgevoerd te beperken vanuit de code of bronnen van een andere applicatie.
  5. Beveiligingsbeheer door configuratiegegevens op te geven voor elk toepassingsdomein.

Techopedia legt toepassingsdomein uit

Toepassingsdomein verschilt in de manier waarop de CLR meerdere .NET-toepassingen laadt en uitvoert in één enkel proces. Het geeft geen directe toegang tot het geheugen van geladen applicaties. Het wordt beheerd door de CLR van het .NET Framework, terwijl een proces wordt beheerd door het besturingssysteem. De CLR biedt foutisolatie tussen toepassingsdomeinen met minder overhead dan processen, vanwege het inherente kenmerk van verifieerbare typeveiligheid van beheerde code. Ook kunnen meerdere threads zich in een toepassingsdomein bevinden, ze zijn vrij om toepassingsdomeingrenzen te overschrijden.


ASP.NET is bijvoorbeeld een runtime-host die meerdere toepassingsdomeinen maakt voor elke gebruiker die een website bezoekt. Ze kunnen ook worden gemaakt en geconfigureerd voor toepassingen die code moeten isoleren of alleen extensies moeten laden terwijl ze worden gebruikt. Dit feit maakt applicatiedomeinen nuttig in situaties waarin plug-ins en andere niet-vertrouwde code worden gebruikt. Ze zijn ook nuttig bij het minimaliseren van de werkset van applicaties die grote DLL's gebruiken.


Om communicatie tussen objecten in verschillende toepassingsdomeinen mogelijk te maken, wordt een van de volgende drie typen objecten gebruikt:

  1. Marshal-by-Value: volledige kopie van het object dat is doorgegeven aan het aanroepende toepassingsdomein. Dit wordt gebruikt wanneer de status van het object om prestatieredenen kan worden verplaatst.
  2. Marshal-By-Reference-Reference (MBR): een proxy van het object wordt aan de client doorgegeven; gebruikt wanneer de status van het object binnen het toepassingsdomein moet blijven.
  3. Contextgebonden: MBR-object dat wordt gebruikt voor verschillende domeinen of binnen de context van het eigen toepassingsdomein.
Deze definitie is geschreven in de context van .NET
Wat is een toepassingsdomein in .net? - definitie van techopedia