Gunicorn: Augmentation de la mémoire après une longue période de service

Créé le 10 oct. 2018  ·  3Commentaires  ·  Source: benoitc/gunicorn

SALUT :
J'utilise flask + gunicorn pour faire un service api. Parce que je veux partager de grandes données entre les processeurs de travail, j'initialise donc les données dans gunicorn.conf et j'utilise "gunicorn -c gunicorn.conf" pour le terminer. Toutes les données dans gunicorn.conf ne seraient effectuées qu'une seule fois, de sorte que chaque processeur de travail partage une grande donnée commune. Les données volumineuses de mon programme sont prêtes uniquement, aucune opération d'écriture. Mais lorsque je démarre mon service et que je fonctionne longtemps, parfois la mémoire augmente soudainement de 1G, je suppose qu'il peut y avoir une opération d'écriture dans gunicorn à cause du mécanisme de copie sur écriture du système. Et comment partager les données volumineuses entre les processeurs de travail ? Je suis toujours confus par ce problème, attendez votre réponse !!! Merci!

Commentaire le plus utile

Ceci est lié à #1640.

La seule autre façon de gérer cela serait de faire quelque chose qui évite la gestion de la mémoire Python. Peut-être que le module mmap pourrait vous aider.

Tous les 3 commentaires

Ceci est lié à #1640.

La seule autre façon de gérer cela serait de faire quelque chose qui évite la gestion de la mémoire Python. Peut-être que le module mmap pourrait vous aider.

Merci!!! C'est très utile !

SALUT:
Avec les informations que vous me donnez, je mets à jour mon python de 2.7 à 3.7 et utilise gc.freeze() pour éviter certains objets collectés par le ramasse-miettes. Cette fois, il ne semble pas que « la mémoire augmente soudainement de 1 G », mais cela entraîne une croissance lente de la mémoire lorsque la mémoire de chaque sous-processeur augmente de 500 M+, puis arrête de croître. Je pense que gc.freeze() est un travail et fait une apparence de mémoire différente. J'espère que le travail que j'ai fait sera utile à d'autres personnes. Merci!

Cette page vous a été utile?
0 / 5 - 0 notes