O que é troca excessiva

1

Este post me levou a fazer essa pergunta.

Cache contention

On a large site, if you are using MyISAM, contention occurs in the database tables when the cache is forced to clear after a node or a comment is added. With tens of thousands of filter text snippets needing to be deleted, the table will be locked for a long period, and any accesses to it will be queued pending the purge of the data in it. The same is true for the page cache as well.

This often causes a "site hang" for a minute or two. During that time new requests keep piling up, and if you do not have the MaxClients parameter in Apache setup correctly, the system can go into thrashing because of excessive swapping.

    
por amateur barista 11.03.2011 / 07:36

1 resposta

4

Trocar é o que acontece quando os programas que você está executando alocam mais memória do que a RAM física da sua máquina. Alguns dos dados são trocados para o disco e trocados de volta quando é necessário.

Tudo bem, desde que isso não aconteça com muita frequência. O acesso ao disco é muito mais lento do que o acesso à RAM, portanto toda vez que o computador tiver que trocar, o programa que o causou terá que pausar enquanto os dados são transferidos.

Troca excessiva (também chamada de thrashing) é o que acontece quando a quantidade de memória que os programas estão usando ativamente excede a quantidade de memória física. O computador gasta todo o seu tempo trocando dados entre disco e RAM, e pouco tempo realmente realizando qualquer trabalho.

No artigo que você mencionou, o problema era que muitos processos do Apache eram bifurcados. Cada processo requer um pouco de memória e, se MaxClients estiver muito alto, o Apache continuará a bifurcar os processos filhos até que o sistema seja rastreado.

    
por 11.03.2011 / 08:59

Tags