o que pode fazer com que o processo do linux gerencie o pool de conexões em um estado ruim, para que ele reinicialize-as continuamente?

2

Eu tenho um aplicativo com um pool de conexões para o MySQL. Em algum momento, na produção, a cada 1-3 segundos, algum soquete é fechado. Como resultado, meu aplicativo reinicia essa conexão.

Esse é um pool muito grande de 30 conexões / servidor de aplicativos conversando com uma única instância do MySQL. No total, provavelmente há 1000 conexões no lado do banco de dados.

Quando eu reinicio o processo de inscrição, o problema desaparece. Eu procuro por algum motivo conectado a soquetes, descritores de arquivos, kernel .. Aplicativos abre e fecha ~ 10-30 conexão a cada segundo, a fim de ter cerca de 4-5k de conexões de entrada.

Como evitar isso?

lsof -nPi tcp 

reporta cerca de 5k conexões (e corrige o número de saída para o mysql).

/proc/sys/net/ipv4/ip_local_port_range

mostra 10k a 60k portas disponíveis

ulimit -n está configurado para um número alto (100k)

O Vmstat não mostra troca. Estou com 50% da CPU e 25% de memória.

O que posso verificar em seguida? Como consertar isso?

    
por user1971693 12.01.2013 / 20:09

0 respostas