Назад | Перейти на главную страницу

IIS выдает ошибку 503: «Выполняется завершение работы системы. (0x8007045b) »после включения приостановки в пуле приложений

У меня есть несколько веб-сайтов ASP.NET Core на виртуальной машине Windows Server 2016, работающей в IIS / Kestrel (конфигурация обратного прокси).

Некоторые из этих веб-сайтов неактивны в течение дня. Из-за этого их пул приложений прекращается (и я хотел бы сохранить это, чтобы использовать меньше ресурсов). Проблема в том, что холодный старт длился довольно долго. Затем я настраиваю эти пулы приложений на Suspend вместо того Terminate после простоя.

С тех пор эти сайты не только принимают дольше для запуска в холодную погоду, но также выдает 503 секунды при холодном запуске. После запуска они работают нормально. Но первым обращением к приостановленному пулу приложений почти всегда является 503. Тело содержит сообщение типа «Служба недоступна», но переведенное (и не в UTF-8, похоже, поскольку символы отображаются неправильно). Я не уверен, пришло ли это сообщение от IIS или Kestrel.

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

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
 <System>
  <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/>
  <EventID>0</EventID>
  <Version>1</Version>
  <Level>3</Level>
  <Opcode>16</Opcode>
  <Keywords>0x100</Keywords>
  <TimeCreated SystemTime="2019-10-24T15:13:51.803Z"/>
  <Correlation ActivityID="{80000C51-0003-BC00-B63F-84710C7967BB}"/>
  <Execution ProcessID="13656" ThreadID="17072"/>
  <Computer>[REDACTED]</Computer>
 </System>
 <EventData>
  <Data Name="ContextId">{80000C51-0003-BC00-B63F-84710C7967BB}</Data>
  <Data Name="ModuleName">AspNetCoreModuleV2</Data>
  <Data Name="Notification">128</Data>
  <Data Name="HttpStatus">503</Data>
  <Data Name="HttpReason">Server has been shutdown</Data>
  <Data Name="HttpSubStatus">0</Data>
  <Data Name="ErrorCode">2147943515</Data>
  <Data Name="ConfigExceptionInfo"></Data>
 </EventData>
 <RenderingInfo Culture="en-US">
  <Opcode>MODULE_SET_RESPONSE_ERROR_STATUS</Opcode>
  <Keywords>
   <Keyword>RequestNotifications</Keyword>
  </Keywords>
  <freb:Description Data="Notification">EXECUTE_REQUEST_HANDLER</freb:Description>
  <freb:Description Data="ErrorCode">A system shutdown is in progress.
 (0x8007045b)</freb:Description>
 </RenderingInfo>
 <ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace">
  <EventGuid>{002E91E3-E7AE-44AB-8E07-99230FFA6ADE}</EventGuid>
 </ExtendedTracingInfo>
</Event>