Marcus Wittmann

Dicas de AnĂ¡lise e Desenvolvimento!

Session TimeOut no IIS6

Nesses últimos dias tive um problema no qual eu setava o Session TimeOut no Web.Config porém a configuração não surtia efeito.

Fiz umas pesquisas e vou compartilhar com vocês o que levantei a respeito desse assunto.

 

Para configurar o Session TimeOut corretamente talvez você precise mudar suas configurações em mais de um lugar, pois, determinada configuração pode estar anulando outra. Vou listar os possíveis lugares a se configurar logo abaixo:

 

  • Web.Config da aplicação

Quando pensamos nesse assunto a primeira opção que geralmente vem a cabeça é a chave Session State do Web.config da aplicação:

<sessionState mode="InProc"
                      stateConnectionString="tcpip=127.0.0.1:42424"
                      sqlConnectionString="data source=127.0.0.1;trusted_connection=true"
                      cookieless="false
                      timeout="20" />

 

  • Idle TimeOut do Application Pool

O tempo default de TimeOut do Application Pool por inatividade é de 20 minutos. Para alterá-lo selecione Propriedades no AppPool desejado, selecione a aba Performance e altere o tempo do Idle TimeOut.

Removendo a opção no Checkbox o processo nunca será reciclado por tempo de inatividade.

 

  • Recycle TimeOut do Application Pool

Selecione Propriedades no AppPool desejado e vá a aba Recycling.

Muito cuidado ao editar esta configuração pois um tempo curto de Recycle pode afetar diretamente a performance de sua aplicação.

Obs: As duas configurações mencionadas acima são aplicadas a todos os Sites que usam determinado Application Pool.

 

  • Session TimeOut da aplicação no IIS

Clique com o botão direito na aplicação desejada e selecione Propriedades. Selecione a aba Home Directory e clique em Configuration.

Abrindo a janela de Configuração de Aplicação selecione a aba Options e conforme mostrado abaixo, mude o tempo de Session TimeOut.

 

  • Default WebSite e DefaultAppPool

As configurações mencionadas acima tambem podem ser aplicadas ao Default WebSite e ao DefaultAppPool.

Caso alguma delas não tenha sido configurada em seu AppPool ou em seu WebSite, por uma questão de hierarquia, a configuração pode estar sendo herdada dos "defaults". Verifique-os para garantir que eles não vão atrapalhar o Session TimeOut de sua aplicação.

 

No meu caso o Session TimeOut da aplicação e o Idle TimeOut do AppPool estavam com um tempo pequeno, não permitindo que minhas alterações no Web.config surtissem efeito. Fique atento!

 

Até o próximo post!


Permalink | Comments (608) | Post RSSRSS comment feed