Прогрев IIS в облачной службе Azure

ссылаясь на этот вопрос я пытался написать этот пример в моем WebRole.OnStart, и я продолжаю получать следующее

Подробности: Роль обнаружила ошибку и была остановлена. Необработанное исключение: System.Net.WebException, Подробности: Исключение: базовое соединение было закрыто: при отправке произошла непредвиденная ошибка. в System.Net.HttpWebRequest.GetResponse() в

и поскольку в журнале публикации указано, что задача запуска IISConfigurator еще не запущена, есть ли другое решение

я использую

  • классический облачный сервис
  • лазурный API 2.8.2
  • Visual Studio 2015, обновление 1

person elibyy    schedule 05.04.2016    source источник


Ответы (1)


Вы можете выполнить сценарий при запуске виртуальной машины узла, включив сценарий в свой проект и добавив задачу запуска в ServiceDefinition.csdef. В приведенном ниже примере мы запускаем Startup.cmd. Мы используем это, чтобы отключить idleTimeout для нашего сайта, вызвав appcmd.exe из скрипта.

Ниже показан узел Startup, который вы добавляете в WebRole в качестве родственного элемента Sites в ServiceDefinition.csdef. Также включено, как внедрить переменные среды выполнения, к которым можно получить доступ через RoleEntryPoint, отличная статья о RoleEntryPoint здесь.

 <Startup>
  <Task commandLine="Startup.cmd" executionContext="elevated" taskType="simple">
    <Environment>
      <Variable name="isEmulated">
        <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated" />
      </Variable>
 <Variable name="instanceId">
        <RoleInstanceValue xpath="/RoleEnvironment/CurrentInstance/@id" />
      </Variable>
    <Environment>
</Task>

person Mikee    schedule 06.04.2016