Tive o mesmo problema com o Sharepoint 2013 e o IIS 8 em 2012 ... Nunca nos incomodamos, mas em vez disso fizemos o downgrade para o SP2013 em 2008 R2 e tudo estava bem.
Migrei recentemente um conjunto de servidores do Windows Server 2008 R2 / IIS 7.5 para novos servidores que executam o Windows Server 2012 / IIS 8.
Estou com algum comportamento estranho do IIS. Temos dois servidores idênticos, cada servidor está executando dois sites, cada um em seu próprio pool de aplicativos. O código para cada um dos sites é idêntico. (Literalmente ... o mesmo dll e tudo, apenas uma configuração ligeiramente diferente).
Os pools de aplicativos são definidos para reciclagem em um agendamento a cada 24 horas, mas durante esse período de 24 horas, o uso da CPU do processo de trabalho w3wp aumenta em incrementos de 12,5% (o servidor tem 8 processadores, então não acho que é uma coincidência).
Quando o uso da CPU aumentar, NÃO voltará até que o aplicativo seja reciclado. Tanto quanto eu posso dizer, o aplicativo não está fazendo nada e processando pedidos NO neste momento. Eu posso bloquear todo o tráfego para o servidor e o uso da CPU só vai ficar lá. Eu posso até mesmo reiniciar o site, e o uso da CPU permanece o mesmo. A única maneira de redefinir o uso da CPU é reciclar ou reiniciar o pool de aplicativos no qual ele é executado.
Estou certo de que esse problema não tem nada a ver com meu código, mas algum tipo de configuração do IIS ou uma alteração no IIS 8 que esteja funcionando mal com a configuração de hardware ou algo assim?
Não tenho certeza se é importante ou não, mas esses são os servidores da Rackspace Performance Cloud.
Aqui está uma captura de tela para mostrar a carga da CPU ao longo do tempo nesses servidores (setas verdes apontam para os horários em que o pool de aplicativos é reciclado. Você pode ver que cada platô é um múltiplo integral de 12,5%:
Alguémobservouessecomportamento?Euencontreiessaperguntaapartirde2009comalguémtendooquepareceseromesmoproblemacomoIIS6:
Qualquer ajuda é muito apreciada
Tive o mesmo problema com o Sharepoint 2013 e o IIS 8 em 2012 ... Nunca nos incomodamos, mas em vez disso fizemos o downgrade para o SP2013 em 2008 R2 e tudo estava bem.
Você pode tentar usar a ferramenta de diagnóstico de depuração para rastreie o que está causando o problema. Geralmente é para solucionar problemas de falhas e vazamentos de memória, mas pode ajudar a descobrir qual componente está causando o problema.
Isso realmente parece com algum código preso em um loop infinito.
Uma solicitação é recebida, o IIS começa a exibi-la, algo (provavelmente um bug) aciona esse comportamento, um thread de trabalho entra em um loop infinito e coloca a CPU em 100% e fica assim até o pool de aplicativos reciclado.
Mesmo que não recebam novas solicitações, a CPU permanece em uso porque o encadeamento preso nunca termina.
Às vezes, uma nova solicitação aciona esse comportamento novamente e você obtém duas CPUs paradas (ou três, ou quatro ...).
Reciclar o pool de aplicativos, é claro, encerra todos os threads de trabalho e, assim, o problema é solucionado ... até que ocorra novamente.
Você poderia anexar um profiler de CPU ao processo w3wp e dar uma olhada no que está acontecendo lá. Você deve ser capaz de ver o que consome os ciclos da CPU.
Parece um loop infinito para mim. Eu já vi isso algumas vezes, apesar do IIS dizer que não há solicitações pendentes. Eu não tenho certeza de como isso pode ser, mas isso é exatamente o que você veria. A parte difícil é que o IIS não registra solicitações até que elas sejam concluídas, portanto, descobrir qual solicitação aciona esse comportamento é difícil.