2010-11-12 18 views
19

J'utilise l'application wsgi sur apache mod_wsgi en mode démon. J'ai ces lignes dans la configurationRéglage mod_wsgi en mode démon

WSGIDaemonProcess app processes=2 threads=3 display-name=%{GROUP} 
WSGIProcessGroup app 

Comment puis-je trouver la combinaison/réglage optimal des processus et des fils?

EDIT: Ce lien [donné ci-dessous réponse] était très utile: https://serverfault.com/questions/145617/apache-2-2-mpm-worker-more-threads-or-more-processes/146382#146382

Maintenant, ma question est la suivante: Si mon serveur donne tout à fait une bonne performance pour mes besoins, dois-je réduire le nombre de threads pour augmenter la stabilité/fiabilité? Puis-je même le mettre à 1?

Répondre

13

Vous pouvez également obtenir plus d'informations sur ServerFault. Par exemple: https://serverfault.com/questions/145617/apache-2-2-mpm-worker-more-threads-or-more-processes

Ceci est une autre bonne ressource pour le sujet: http://code.google.com/p/modwsgi/wiki/ProcessesAndThreading#The_mod_wsgi_Daemon_Processes qui décrit brièvement les options - y compris les discussions de réglage = 1.

Je ne l'ai pas encore fait, mais il semble que ce n » beaucoup d'importance. La prise en charge de plusieurs threads ainsi que de plusieurs processeurs sont tous deux bien pris en charge. Mais pour mon niveau d'expérience (et probablement le vôtre), il vaut la peine d'éliminer le filetage comme une source supplémentaire de préoccupation - même si elle est théoriquement solide comme le roc.

+0

J'ai seulement vu votre mise à jour maintenant. Je pense que je vais aller avec un seul fil. Je vous remercie. – vonPetrushev

1

Votre meilleur pari est probablement d'essayer différentes marques de banc. Vous pouvez utiliser la commande apache benchmark pour obtenir une estimation approximative de la configuration de votre configuration. Une grande partie de l'ajustement va dépendre de la façon dont le CPU/IO est lié à votre application web. Les performances dépendront également des spécifications du serveur que vous hébergez, etc.