Il y a quelques jours, j'ai remarqué une attente d'E / S disque et une baisse d'activité du disque (ce qui était super). Ensuite, je remarque également que mon cache était plein (*) et fragmenté. Puis j'ai vidé le cache. Après cela, la latence et l'activité du disque sont passées au niveau précédent (ce qui était mauvais).
IOtop montre que [jbd2 / sda2-8] et [flush-8: 00] sont toujours au sommet de l'utilisation du disque. Il s'agit d'un Dell R210, RAID 1 matériel (H200) avec beaucoup de mémoire disponible (16 Go au total, dont environ 8 Go sont de mémoire tampon / cache).
(*) Le cache est le cache d'opcode APC pour PHP, ce qui réduit l'accès au disque pour l'exécution des scripts PHP. Le cache était plein et fragmenté car il comprenait des fichiers de l'instance de développement. Quand j'ai remarqué cela, je les ai filtrés.
La question est: pourquoi les E / S disque augmentent-elles alors qu'en théorie elles devraient diminuer? Voici quelques graphiques de munin. Le cache était plein du 6 au 8 février.
Changer après avoir commenté apc.mmap_file_mask comme dit par @ cyberx86
Et après quelques jours https://serverfault.com/a/362152/88934
apc.mmap_file_mask=/tmp/apc.XXXXXX
), vous pouvez voir des E / S élevées. Essayez de configurer apc.mmap_file_mask
pour utiliser la mémoire partagée (par exemple /apc.shm.XXXXXX
) ou pour /dev/zero
(mémoire mmappée anonyme).