mongodb占物理内存
ringa_lee
ringa_lee 2017-04-24 09:13:16
0
4
865

mongodb占物理内存,我们一台服务器8G内存,没有开mongodb的时候,物理内存只占11%,当开了mongodb,mongodb进程的内存显示是60M,但物理内存已经是99%,请问是什么原因?有没有优化的办法,我们是在WINDOWS系统.

ringa_lee
ringa_lee

ringa_lee

répondre à tous(4)
伊谢尔伦

Je me souviens qu'une personne nommée Tang Jianfa a dit : MongoDB ne mange pas de mémoire, mais son intention initiale est d'occuper délibérément la mémoire.

大家讲道理

Mongodb lui-même ne gère pas la mémoire, et sa gestion de la mémoire dépend entièrement du système. Vous pouvez utiliser System Performance Monitor pour vérifier la mémoire et la mémoire virtuelle. Pour faire simple, mongdb consommera autant de mémoire que vous en avez. Il est tellement gourmand qu'il mettra la plupart des données chaudes en mémoire pour améliorer les performances. Après tout, c'est aussi son avantage.
Notre serveur est Windows Server 2008, avec 32 Go de mémoire. Après avoir fonctionné pendant un certain temps, tout était épuisé, mais les performances étaient surprenantes. Cependant, il n'y avait pas que mongodb sur ce serveur, donc cela affectait souvent d'autres programmes. Plus tard, nous avons essayé d'utiliser le gestionnaire de ressources système Windows WSRM pour limiter la mémoire du processus mongodb. Vous pouvez l'essayer.
Mais j'ai commencé à utiliser mongodb il y a un an. La version à cette époque était relativement ancienne. Après avoir limité la mémoire, mongodb était très instable et raccrochait parfois. En regardant les journaux, cela signifiait généralement que la mémoire mappée était introuvable. Plus tard, nous avons renoncé à limiter la mémoire et sommes passés à l'utilisation des commandes mongodb pour libérer de la mémoire à des points fixes chaque jour {closeAllDatabases:1}
Cette commande a également un coût, elle sera bloquée jusqu'à ce que la commande soit terminée, et l'efficacité sera réduite immédiatement après son lancement, et il faudra une période de « préchauffage » pour récupérer lentement.
Je pense que cette dernière méthode est bonne, et grâce aux observations des deux dernières années, tout est relativement stable. Bien sûr, ce serait formidable si vous pouviez donner à mongodb un serveur séparé.

迷茫

Le nouveau moteur MongoDB se considérera comme le seul service important du système, il essaiera donc d'occuper autant de mémoire que son propre cache (pas celui du système d'exploitation). Si vous devez réserver de la mémoire pour d'autres processus ou disposer de plusieurs instances MongoDB, vous pouvez utiliser le paramètre --cacheSizeGB pour limiter la taille du cache MongoDB.

刘奇

J'ai écrit un script pour vider le cache chaque petit matin. . .
http://onwise.xyz/2017/02/23/...

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!