Жизненный цикл приложения Asp.net - PullRequest
0 голосов
/ 03 октября 2018

Этот вопрос может показаться глупым, но я нигде не получил четкого ответа.Я пытаюсь выяснить, как на самом деле работает приложение asp.net, в приложении Windows (.net), когда приложение развернуто на одном или нескольких ПК, пользователь может щелкнуть по нему, чтобы открыть приложение, и, если пользователь снова будет создан, будет создан экземпляр этого приложения.открывает приложение, затем создается другой экземпляр (например, можно открыть несколько файлов Excel).Но в Интернете, поскольку приложение развернуто на веб-сервере и может быть несколько пользователей, запрашивающих одно и то же приложение, существует ли механизм для создания экземпляра веб-приложения asp.net для каждого уникального запроса браузера?Другими словами, если A и B являются двумя пользователями и имеют доступ к одному приложению, тогда два экземпляра (inst A, inst B) создаются на веб-сервере для обработки запроса?

Ответы [ 2 ]

0 голосов
/ 03 октября 2018

Само веб-приложение имеет один экземпляр.Каждый запрос обрабатывается разными потоками.Каждый запрос проходит через конвейер приложения (отличается для старого ASP.NET, отличается для ASP.NET Core), который в наиболее распространенном сценарии создает новый экземпляр класса, отвечающий за обработку запроса (обычно контроллер).Отдых определяется в областях (поэтому, если некоторые из ваших классов являются одиночными или ограниченными экземплярами, или вы используете контейнеры IoC с определенными областями), они могут совместно использовать экземпляры между различными запросами.

По сути, вы не видитефункция основного цикла, предоставляемая платформой, которая обрабатывает все запросы, создает экземпляры классов и передает управление вашему коду.

0 голосов
/ 03 октября 2018

Asp.net вместе с веб-сервером и ОС используют threads для обработки каждого запроса.Потоки во многом совпадают с процессами, которые вы описываете для отдельных экземпляров Excel.Потоки позволяют каждому пользовательскому сеансу независимо обрабатываться веб-сервером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...