Question

J'ai un OSQA (python / django q et une application) l'installation au service 8 sites différents. Les sites sont tous dans le développement, la réception du trafic minimal. Le serveur est un serveur privé virtuel avec 512 Mo de RAM.

Apache est uniquement au service de pages dynamiques avec mod_wsgi derrière Nginx. Je ne peux pas arrêter Apache consommer de plus en plus de mémoire à chaque demande jusqu'à ce que les bobines d'arrêt du serveur.

J'ai expérimenté avec les paramètres de configuration sans beaucoup de chance de minimiser l'empreinte mémoire. Avec les paramètres suivants dans mpm_prefork apache2.conf:

StartServers          2
MinSpareServers       1
MaxSpareServers       4
MaxClients            4
MaxRequestsPerChild 100

2 processus apache commencent à utiliser 4 mb et après la première demande il y a 4 processus avec chacun près de 50 mb et avec chaque nouvelle demande les 4 processus grimpent progressivement jusqu'à près de 200 Mo chacune.

Je me sens comme il y a quelque chose de mal se passe. Toutes les suggestions sont grandement appréciés.

Était-ce utile?

La solution

KeepAlive Off
MaxSpareThreads 3
MinSpareThreads 1
ServerLimit 3
SetEnvIf X-Forwarded-SSL on HTTPS=1
ThreadsPerChild 2

WSGIDaemonProcess osqaWSGI processes=2 python-path=/web/osqa_server:/web/osqa_server/lib/python2.6 threads=1 maximum-requests=550
WSGIProcessGroup osqaWSGI

Ran httperf contre cela avec 10.000 coups simultanés et il était toujours debout.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top