A partir do IIS 7, poucos / nenhum posso pensar. O WAS não carrega componentes opcionais, apenas faz o seu trabalho.
O IIS 6 hospeda uma cópia na memória de sua configuração de / para / na Metabase, em InetInfo.exe. Se isso ficar bloqueado, tudo falhará (geralmente de uma só vez), e isso exigiria uma reinicialização do serviço (IISRESET / NOFORCE, se possível).
Em 99% do tempo, é suficiente reciclar um pool de aplicativos para restaurar o serviço ou fazer com que um aplicativo particularmente recalcitrante releia sua configuração (se tiver escapado das notificações de alteração de arquivo ou se estiver entediado com a vida ou apenas pendurado). O Isolamento do processo de trabalho do IIS 6 + (Modo) significa que a maioria das falhas é restrita a um único processo, e uma reciclagem normalmente funciona, iniciando um novo processo de trabalho na próxima solicitação.
Existem exceções, como com qualquer coisa, mas como regra prática para aplicativos da web "puros", isso é tudo que você precisa fazer.
Aplicativos COM, aplicativos que usam o estado fora do próprio processo do servidor da Web e assim por diante podem ser mais problemáticos, e alguns aplicativos não suportam várias instâncias de si mesmos (o que encerra a inicialização) em que caso você esteja um pouco recheado, mas no geral ... funciona.
O IIS7 não hospeda uma cópia na memória de nada, e os processos envolvidos sabem ler diretamente um arquivo de configuração.
O WAS (Windows Process Activation Service) lê os arquivos de configuração, organiza-os em pools de aplicativos (consulte: Inetpub \ Temp \ AppPools) e permite que o processo de trabalho leia suas próprias configurações. Eu não vi muitas situações em que isso foi quebrado o suficiente para exigir um reinício.
O InetInfo não precisa existir no IIS 7 para um servidor que funcione, diferente do IIS < = 6 - está puramente disponível para compatibilidade com aplicativos que precisam conversar com um emulador de metabase (objetos de base administrativa, ADSI, IIS 6 herdado WMI, esse tipo de coisa).
Quanto a quando reiniciar o serviço:
- Muito raramente
- Quando o WAS está registrando erros que parecem não querer viver
- Quando tudo está caindo em uma pilha de uma só vez (e os pools de aplicativos individuais não podem ser identificados para serem reciclados
Caso contrário, apenas reciclar o Pool de aplicativos geralmente é suficiente para se recuperar.
Veja também outra resposta na mesma linha (sim, a minha também): Quais os passos a seguir ao tentar resolver o site do IIS sem resposta / interrompido / interrompido?
HTH