Se você usar o mapeamento de memória com backup de arquivo (por exemplo, apc.mmap_file_mask=/tmp/apc.XXXXXX
), poderá ver uma E / S elevada.
Tente definir apc.mmap_file_mask
para usar memória compartilhada (por exemplo, /apc.shm.XXXXXX
) ou para /dev/zero
(memória mmapped anônima). Manter a configuração indefinida é padronizado usando memória mmap anônima.
Geralmente, os arquivos mmap são ótimos:
- Comparado ao armazenamento de algo totalmente na memória, os arquivos mmap geralmente requerem menos memória
- Comparado a salvar algo em um arquivo, os arquivos mmapped exigem menos E / S de disco (já que as gravações podem ser agregadas juntas).
No entanto, em comparação ao armazenamento de algo puramente na memória, eles incorrem em E / S adicionais - consideravelmente, portanto, quando o arquivo está em constante mudança. A desvantagem de não usar arquivos mmap é a falta de persistência - seu cache não sobreviverá a um reinício, já que ele é armazenado apenas na memória.
Pode-se sugerir, portanto, que enquanto o cache estava sendo preenchido e estabilizado, ele passava pela maioria das alterações, que tinham que ser constantemente gravadas em disco; uma vez que o cache estava cheio, o ttl de cada objeto diminuía a taxa de transferência de dados no cache, diminuindo a mudança e reduzindo as gravações de disco.