Eu tenho um aplicativo ASP.net MVC em execução no Windows Server 2008 com IIS 7. Tudo funciona bem, mas todas as noites os pools de aplicativos param e recebo um http 503
erro, preciso reiniciar o pool todas as manhãs.
O servidor é mantido por outra pessoa e sei que ele está fazendo outro trabalho à noite, o que acho que está causando isso. Além disso, sei que estou recebendo tempos limite de conexão com o banco de dados à noite (o SQL Server está sendo executado na mesma máquina).
Eu estaria interessado em saber:
- Porque isso está acontecendo. Esse é um recurso do IIS que interrompe o pool de aplicativos quando o servidor fica muito lento ou quando ocorrem muitos erros?
- Existe alguma configuração para impedir isso ou existe uma maneira de fazer o pool de aplicativos tentar reiniciar sozinho?
Eu ficaria grato por qualquer dica.
Responder1
Sim, há um intervalo de erro incorporado ao IIS 7. Só tenho uma versão holandesa do IIS aqui. então posso não traduzi-lo totalmente corretamente.
Vá para Application Groups
-> [clique com o botão direito do mouse no aplicativo especificado] -> Advanced Settings
.
Vá para a categoria Fast security against errors
.
Você pode ver aqui que ele está habilitado por padrão com um intervalo de erro de 5 minutos para 5 erros. Você pode desativar esta opção ou ajustá-la. Você também pode fazer um trabalho em lote que iniciará seu aplicativo todas as manhãs. Esta opção é mais segura para o seu banco de dados, pois será muito mais difícil derrubar seu site e seu banco de dados com um ataque DoS quando o erro de segurança estiver desabilitado.
Você pode iniciar o aplicativo usando a linha de comando como:
%windir%\system32\inetsrv\appcmd start apppool /apppool.name:[Nome do aplicativo]