Дом развитие Что такое домен приложения в .net? - определение из техопедии

Что такое домен приложения в .net? - определение из техопедии

Оглавление:

Anonim

Определение - Что означает домен приложения?

Домен приложения представляет собой границу логической изоляции, созданную вокруг приложений .NET, чтобы приложения не обращались и не влияли друг на друга. Это легкий процесс, имеющий собственный набор кода, данных и настроек конфигурации. Домены приложений создаются хостами времени выполнения, которые вызываются средой CLR для загрузки приложений, которые необходимо выполнить.


До .NET границей изоляции между приложениями были процессы, в которые они были загружены. Каждый процесс имел свою собственную виртуальную память и не может напрямую обращаться к памяти другого процесса. Домен приложения имеет функции, аналогичные процессам.


Домены приложений имеют следующие функции:

  1. Оптимальное использование системных ресурсов благодаря использованию меньшего количества процессов для выполнения нескольких приложений.
  2. Надежность за счет использования изоляции задач в ситуациях, когда данные не могут использоваться совместно, и для нестабильных задач, которые необходимо выгружать, не влияя на процесс.
  3. Повышение эффективности за счет выполнения длительных процессов, которые редко используют большие расширения с оптимальной памятью.
  4. Безопасность приложения путем ограничения прямого доступа к коду, выполняемому в одном приложении, из кода или ресурсов другого приложения.
  5. Контроль безопасности путем указания деталей конфигурации для каждого домена приложения.

Techopedia объясняет домен приложения

Домен приложения отличается тем, как CLR загружает и выполняет несколько приложений .NET в одном процессе. Он не разрешает прямой доступ к памяти загруженных приложений. Он управляется CLR .NET Framework, тогда как процесс управляется ОС. CLR обеспечивает изоляцию отказов между доменами приложений с меньшими издержками, чем процессы, благодаря присущей ему проверяемой безопасности типов управляемого кода. Кроме того, несколько потоков могут находиться в домене приложения, они могут свободно пересекать границы домена приложения.


Например, ASP.NET - это узел времени выполнения, который создает несколько доменов приложений для каждого пользователя, обращающегося к веб-сайту. Их также можно создавать и настраивать для приложений, которым необходимо изолировать код или загружать расширения только во время их использования. Этот факт делает домены приложений полезными в ситуациях, когда используются плагины и другой ненадежный код. Они также полезны для минимизации рабочего набора приложений, которые используют большие библиотеки DLL.


Для обеспечения связи между объектами в разных доменах приложения используется один из следующих трех типов объектов:

  1. Marshal-By-Value: полная копия объекта, переданная в домен вызывающего приложения. Это используется, когда состояние объекта может быть перемещено по соображениям производительности.
  2. Marshal-By-Reference-Reference (MBR): прокси объекта передается клиенту; используется, когда состояние объекта должно оставаться в домене приложения.
  3. С привязкой к контексту: объект MBR, используемый в доменах или в контексте его собственного домена приложения.
Это определение было написано в контексте .NET
Что такое домен приложения в .net? - определение из техопедии