kuroineko_fr a écrit :
vu ta copie d ecran tu manques de rien si ton appli se plaind c est qu elle code avec les pieds par des culs de jattes en tongs ou encore qu elle a ete porte a linux mais code a l origine pour d autres OS qui gerent differement la memoire... et oui pour les IO
|
Ou tout simplement qu'elle tourne avec un parametre indiquant le max mémoire à consommer et qu'elle dépasse ce max.
Ca n'est pas forcément la faute des dev. Le parametre pouvait etre complétement judicieux au moment où il a été choisi et puis suite à une modif de la charge / modele applicatif faite de manière allongée et progressive, ne plus l être.
Si c est du Java par ex. ( paramètres Xmx et MaxPermSize), le plus simple serait d'utiliser la commande jmap pour avoir les infos.
Quand aux certitudes... j'ai quasiment eu le meme genre de profil de réponse de la commande free -m y a quelques jours. (swap vide, used proche du total, pas mal de truc en buffer et cache - et résultat cohérent en utilisant vmstat et top )
Mes process Java balancaient des OutOfMemoryError et manifestement, ce n était pas un probleme de dimensionnement de leurs zones mémoires ( les 3 zones étaient meme pas occupés à 50%, et le probleme ne se produisait que quand j'en lancais suffissament en // ) , donc ca venait probablement du systeme. Aucun autre process non systeme ne semblait consommer de la mémoire. On a rebooté le serveur et comme par magie, le problème a disparu...
Après coup , j'essaierai de balancer un
ps -eo vsz,pmem,rss,pid,user,args | sort -k 1 -r -n |
pour dépiauter en détail la conso des process systemes.
Edit : pas vu que c était une BDD. C est quoi du coup? Ca serait intéressant de faire la somme des colonnes vsz et pmem pour les process liés à la BDD.
Message édité par poulpeleach le 06-05-2016 à 15:05:21
---------------
Les lacets le gravier et dans l'air du soir , la Chrysler s'envole dans les fougères et les nénuphars