Maison > Questions et réponses > le corps du texte
Je sais que worker_processes
signifie le nombre de processus de travail, mais comment cette valeur doit-elle être définie ? Théoriquement, il est correct de le définir en fonction du multiple du nombre de cœurs de processeur, mais combien de fois cela fait-il ? Certaines personnes disent que vous devriez définir autant de processus qu'il y a de cœurs, et une autre théorie consiste à le définir sur deux fois le nombre de cœurs de processeur.
Mais je pense qu'il devrait y avoir un principe ici. Sinon, pourquoi nginx ne détermine-t-il pas le nombre de cœurs dans le programme puis n'exécute-t-il pas le processus correspondant ? Je suis sûr que cette valeur doit être jugée sur la base d'une certaine expérience. Quelqu'un peut-il partager son expérience à cet égard ?
曾经蜡笔没有小新2017-05-16 17:31:54
De manière générale, définissez-le simplement sur le nombre de cœurs de processeur. N'oubliez pas non plus de définir worker_cpu_affinity. Cette configuration est utilisée pour lier le processus de travail au cœur de processeur spécifié, réduisant ainsi le coût de reconstruction sur site des registres et. d'autres registres causés par la commutation de plusieurs cœurs de processeur. Pour plus d'informations sur cet élément de configuration, veuillez vous référer à http://www.nginx.org/en/docs/ngx_core....
De plus, Tengine, la branche nginx maintenue par Taobao, peut utiliser la commande auto pour configurer automatiquement worker_processes et worker_cpu_affinity. Tengine est open source : http://tengine.taobao.org/
某草草2017-05-16 17:31:54
Personnellement, si ma machine n'exécute que des applications nginx, je règle le nombre total de cœurs sur -1 C'est peut-être une habitude, mais cela a toujours très bien fonctionné~
.