Quais alterações na configuração exigem a reinicialização do serviço da Web?

2

Estou com a impressão de que determinadas alterações de configuração (do servidor da Web) exigem o envio de um ciclo ao serviço.

  • Existe uma regra geral de quais alterações específicas exigem a reinicialização do serviço ou é apenas uma boa prática? O servidor sempre informa quando o serviço precisa ser invertido?
  • Quais mudanças realmente ocorrem quando você reinicia o serviço que requer que o serviço seja reiniciado?

Estou me referindo especificamente ao IIS, mas gostaria de saber se outros servidores da Web têm o mesmo requisito.

    
por Gary 12.07.2011 / 17:27

2 respostas

1

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

    
por 14.07.2011 / 15:11
0

Geralmente, alterações de configuração exigem um início / parada do servidor da web. O servidor da web lê os arquivos de configuração e os aplica quando é iniciado. O servidor da web não lê dinamicamente os arquivos de configuração durante a execução.

    
por 12.07.2011 / 18:00