Как это происходит, точки входа веб-роли Azure и обработчик страниц ASPX выполняются в разных процессах? - PullRequest
3 голосов
/ 01 июня 2011

Я играю с этим примером веб-роли Azure . Он содержит класс, полученный из RoleEntryPoint, и страницу .aspx, которая содержит обработчик нажатия кнопки.

Я тестирую его в эмуляторе Azure. Я поставил следующий код (взят отсюда )

string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;

в роли OnStart() и в обработчике нажатия кнопки. Когда вызывается роль OnStart(), она запускается в WaIISHost.exe под учетной записью MachineName\\MyLogin, а когда вызывается код обработчика кнопки, она запускается в w3wp.exe под учетной записью MachineName\\NETWORK SERVICE. Это удивительно.

Почему эти фрагменты кода из одного и того же ролевого проекта выполняются внутри разных процессов и под разными учетными записями? Могу ли я это изменить?

Ответы [ 2 ]

3 голосов
/ 02 июня 2011

Дэвид прав. Кроме того, вы можете отключить это поведение и запустить все в размещаемом веб-ядре (как это работало до SDK 1.4). Вам просто нужно закомментировать раздел «Сайты» в определении сервисов, как в примере ниже:

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="aExpense.Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
  <WebRole name="aExpense" vmsize="Medium">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="HttpsIn" endpointName="HttpsIn" />
        </Bindings>
      </Site>
    </Sites>
    <ConfigurationSettings>
      <Setting name="DiagnosticsConnectionString" />
      <Setting name="DataConnectionString" />
      <Setting name="allowInsecureRemoteEndpoints" />
    </ConfigurationSettings>
3 голосов
/ 01 июня 2011

В Windows Azure v1.3 и более поздних версиях веб-роль использует преимущества полного IIS, а не размещенного веб-ядра. IIS работает в отдельном домене приложения.

См. в этом блоге от команды Windows Azure для подробностей.

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