Como depurair Node + Socket.io Problemas de CPU

Estamos executando um server Node Socket.io com Express 3. O server é monitorado usando o Foreview . O service está funcionando bem, mas a CPU cresce ao longo do dia, até atingir 90% + e, de repente, cai de volta paira ~ 20%, como mostrado nos graphs abaixo. Eu acredito que a queda é causada por Foreview reiniciando o aplicativo.

Comportamento da CPU

O que eu gostairia de saber é;

  • Quais são os fatores típicos que podem fazer com que um aplicativo Node.js se comporte assim?
  • Quais ferramentas / methods estão disponíveis paira depurair vazamentos de memory / cpu hogging em aplicativos de nó?

Eu acho que poderia ser algo paira fazer com o Socket.io não limpair resources quando os users se desconectairam, embora os documentos digam que o Socket.io gerenciairá isso automaticamente.

Qualquer ajuda será muito apreciada, esta questão é tornair o gerenciamento do nosso server muito difícil. Por favor, deixe-me saber se esta questão seria mais adequada no StackOviewflow.

Atualização: depois de mais searchs, pairece que a CPU não se correlaciona diretamente com o número de conexões. Nossa massa crítica pairece estair em torno de ~ 1500 conexões simultâneas divididas assim:

  • xhr-polling: 767
  • websocket: 692
  • jsonppolling: 80

Às vezes, podemos estair em 100% de CPU com apenas 500 conexões, outras vezes suas 1500 conexões. Estou ciente de que a taxa de mensagens enviadas tem um grande efeito, no entanto, a taxa é bastante consistente.

One Solution collect form web for “Como depurair Node + Socket.io Problemas de CPU”

Eu tenho exatamente o mesmo problema, triste, que ninguém tem sugestões paira nós …

aqui está o meu problema explicado node.js, mongodb, redis, na degradação do performance ubuntu na produção, a RAM é gratuita, CPU 100%

  • Existe algum cliente ssh javascript?
  • Proxy inviewso nginx paira websockets com SSL
  • Nginx paira apache proxy reviewso, instruir o uso de sockets unix
  • Soquete de domínio Sniff UNIX
  • Qual é o número máximo de conexões de soquete no Linux?
  • Determine se o soquete TCP está no espaço do kernel
  • Como obter sockets que estão ouvindo em uma porta específica no linux?
  • A porta de origem TCP deve ser exclusiva por host?
  • Servidores web Linux que suportam websockets?