Mantenha o WCF ativo, sem reciclagem do IIS

3

Eu tenho um aplicativo WCF. Eu gostaria de manter este aplicativo ao vivo o tempo todo.

Se houver um certo período de inatividade, o pool de aplicativos do IIS será reciclado?

Como posso mantê-lo vivo o tempo todo?

Devo usar um temporizador?

Eu tenho dados confidenciais dentro do aplicativo, e leva tempo para preenchê-lo, por isso gosto de mantê-lo ativo o tempo todo.

    
por user30597 23.08.2011 / 21:49

2 respostas

7

Por padrão no IIS, o pool de aplicativos recodificará após 20 minutos de inatividade (configuração de tempo limite ocioso).

Você pode aumentar isso (acredito que defini-lo como 0 é o equivalente a defini-lo para nunca timeout).

No entanto, acho que seria melhor analisar a situação geral, em vez de simplesmente ajustar o tempo limite inativo no IIS.

Com que frequência o serviço é usado? Algumas vezes por hora, algumas vezes por minuto, muitas vezes por segundo?
Quantos clientes estão se conectando ao mesmo tempo?
Quanto tempo leva para preencher os dados? O comprimento dessa carga inicial é realmente suficiente para justificar o aumento do tempo limite ocioso? Etc.

Outra opção a ser considerada se você quiser que o serviço esteja funcionando o tempo todo é hospedá-lo como um Serviço do Windows. Fiz isso com um dos meus serviços em que precisei manter um pool de objetos.

Apenas algumas coisas a serem consideradas.

    
por 23.08.2011 / 21:54
4

Você sempre pode criar um serviço de hospedagem pessoal WCF e evite completamente o IIS

    
por 23.08.2011 / 22:32

Tags