Pergunta

No IIS 6, o que uma redefinição do IIS faz?

Compare com a reciclagem de um pool de aplicativos e a interrupção e inicialização de um site ASP.NET.

Se você substituir uma DLL ou editar/substituir o web.config em um site ASP.NET, isso é o mesmo que parar e iniciar esse site?

Foi útil?

Solução

IISReset para e reinicia todo o servidor web (incluindo aplicativos não ASP.NET)
A reciclagem de um pool de aplicativos afetará apenas os aplicativos em execução nesse pool de aplicativos.
A edição do web.config em um aplicativo da web afeta apenas esse aplicativo da web (recicla apenas esse aplicativo).
Editar machine.config na máquina reciclará todos os pools de aplicativos em execução.

O IIS monitorará o diretório /bin do seu aplicativo.Sempre que uma alteração for detectada nessas DLLs, ele reciclará o aplicativo e recarregará essas novas DLLs.Ele também monitora web.config e machine.config da mesma maneira e executa a mesma ação para os aplicativos aplicáveis.

Outras dicas

IISReset reinicia todo o servidor web (incluindo todos os sites associados).Se você deseja apenas redefinir um único site ASP.NET, basta reciclar esse AppDomain.

A maneira mais comum de redefinir um site ASP.NET é editar o arquivo web.config, mas você também pode criar uma página de administração com o seguinte:

public partial class Recycle : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        HttpRuntime.UnloadAppDomain();
    }
}

Aqui está uma postagem no blog que escrevi com mais informações: Evite IISRESET em aplicativos ASP.NET

Ele opera em toda a árvore de processos do IIS, e não apenas nos pools de aplicativos.

C:\>iisreset /?

IISRESET.EXE (c) Microsoft Corp. 1998-1999

Usage:
iisreset [computername]

    /RESTART            Stop and then restart all Internet services.
    /START              Start all Internet services.
    /STOP               Stop all Internet services.
    /REBOOT             Reboot the computer.
    /REBOOTONERROR      Reboot the computer if an error occurs when starting,
                        stopping, or restarting Internet services.
    /NOFORCE            Do not forcefully terminate Internet services if
                        attempting to stop them gracefully fails.
    /TIMEOUT:val        Specify the timeout value ( in seconds ) to wait for
                        a successful stop of Internet services. On expiration
                        of this timeout the computer can be rebooted if
                        the /REBOOTONERROR parameter is specified.
                        The default value is 20s for restart, 60s for stop,
                        and 0s for reboot.
    /STATUS             Display the status of all Internet services.
    /ENABLE             Enable restarting of Internet Services
                        on the local system.
    /DISABLE            Disable restarting of Internet Services
                        on the local system.

A reciclagem do pool de aplicativos reinicia o processo w3wp.exe para esse pool de aplicativos, portanto, afetará apenas sites em execução nesse pool de aplicativos.

IISReset reinicia TODOS os processos w3wp.exe e qualquer outro serviço relacionado ao IIS, ou seja,o serviço NNTP ou FTP.

acho que mudando web.config ou /bin não recicla todo o pool de aplicativos, mas não tenho certeza disso.

Ele interrompe e inicia os serviços que compõem o IIS.

Você pode pensar nisso como fechar o programa relevante e iniciá-lo novamente.

Aqui está o que o technet tem a dizer sobre iisreset

Talvez seja necessário reiniciar o Internet Information Services (IIS) antes que determinadas alterações de configuração entrem em vigor ou quando os aplicativos ficarem indisponíveis.Reiniciar o IIS é o mesmo que parar primeiro o IIS e depois iniciá-lo novamente, exceto que isso é feito com um único comando.

Você pode encontrar mais informações sobre quais serviços isso afeta nos documentos da Microsoft.

Quando você altera o arquivo de configuração de um site ASP.NET, ele reinicia o aplicativo para refletir as alterações...

Quando você faz uma redefinição do IIS, todos os aplicativos em execução nessa instância do IIS são reiniciados.

Editando o web.config arquivo ou atualizando uma DLL no bin pasta apenas recicla o processo de trabalho desse aplicativo, não de todo o pool.

IISReset reinicia todo o servidor web (incluindo todos os sites associados).Se você deseja redefinir apenas um único site ASP.NET, basta reciclar esse domínio de aplicativo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top