CentOS I / O bloqueando as páginas sujas

1

Eu tenho um servidor web Apache no CentOS. Ele não está fazendo nada de fantástico ou complicado, mas em intervalos experimenta uma alta carga (120 para 4 CPUs) por algum motivo. Durante esse período, vejo altas esperas e escrevo durações. Eu reduzi isso ao fluxo de páginas sujas no disco para abrir espaço para novos dados.

Eu tentei muitas coisas e conversei com os desenvolvedores que também estão intrigados com isso. Estou perplexo.

Detalhes: servidor guest virtual vmware 4 cpus 12G RAM Apache PHP

Eu tenho 40 servidores neste cluster que compartilham a mesma estrutura de disco. Apenas os servidores da web estão com esse problema.

O que eu acho que está acontecendo é que as páginas sujas estão cheias e transbordando. Assim, o flush está mudando para uma gravação síncrona e bloqueando todas as outras E / S até terminar.

Eu configurei o seguinte em sysctl.conf:

vm.dirty_background_ratio = 5

vm.dirty_ratio = 10

Sem impacto real embora. Eu adicionei mais RAM e novamente sem impacto real.

Alguma idéia?

    
por user3662224 28.05.2014 / 23:23

1 resposta

0

Tente definir uma diferença maior entre vm.dirty_ratio e vm.dirty_background_ratio. Por exemplo, vm.dirty_ratio = 40 e vm.dirty_background_ratio = 5. De qualquer forma, é estranho que servidores da web escrevam tanto em discos. Verifique o que e onde está escrito.

    
por 30.05.2014 / 09:45