recherche

Maison  >  Questions et réponses  >  le corps du texte

python - gunicorn supervisor nginx 配置问题,该给gunicorn几个worker,有没有必要上gevent

配置了一下午环境,跑起来是跑起来了,但是寻摸着一次琢磨透他们嘛。

鉴于gunicorn,supervisor用的不多,网络上找到资料很少(中文)

英文的也有些不太好懂。

想问下gunicorn可以设置worker设置几个比较合适呢。阿里云服务器,双核的。

supervisor是不是也有设置类似worker的地方,配置一下午迷糊了。

nginx呢。
晕乎乎的。

另外gevent不太了解,这个有必要上吗。我看配置起来蛮简单的。有什么优缺点呢。

谢谢各位。

PHPzPHPz2893 Il y a quelques jours496

répondre à tous(4)je répondrai

  • 阿神

    阿神2017-04-18 09:17:36

    Qu'il s'agisse de worker ou de Nginx de Process, cela est déterminé en fonction du nombre de CPU cœurs de votre serveur. Votre Alibaba Cloud n'a que des dual core (2个核) ?

    Je ne sais pas grand chose sur

    gunicorn, mais uWSGI a aussi un worker, qui est généralement réglé sur 核数X2.

    NginxOn dit que 8 les processus suffisent.

    Recherchez en ligne Nginx l'optimisation, il devrait y avoir pas mal de tutoriels.

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-18 09:17:36

    À propos de worker, il est fondamentalement recommandé d'être une à deux fois le nombre réel de CPU cœurs. J'utilise généralement autant de worker qu'il y a de cœurs.

    Quant à supervisor, je ne semble pas avoir vu les paramètres liés à worker.

    En fait, j'utilise la combinaison de uwsgi + supervisor + nginx. Vous pouvez google télécharger les détails. J'ai juste suivi le fonctionnaire wiki et je n'ai rien utilisé d'extraordinaire.

    PS : abandonnez les documents chinois, la plupart d'entre eux sont en mauvais état. Même si l'anglais n'est pas facile à lire, au moins vous ne pouvez pas entrer dans la fosse

    .

    répondre
    0
  • 高洛峰

    高洛峰2017-04-18 09:17:36

    1. Le nombre de Workers Gunicorn est généralement configuré d'un point de vue expérience 2 * core + 1, core fait référence au nombre de cœurs.

    2. Le superviseur n'a pas pour concept de configurer le nombre de travailleurs, mais il configure le nombre de processus numprocs Ce champ

    3. .
    4. Si vous utilisez gunicorn, il est généralement recommandé de configurer worker_class sur gevent, vous le savez.

    répondre
    0
  • ringa_lee

    ringa_lee2017-04-18 09:17:36

    gunicorn est un serveur WSGI couramment utilisé dans les applications actuelles, uWSGI et gunicorn sont tous deux des choix courants, et les performances des deux ne sont pas très éloignées. 2 * cpu数 + 1 L'exemple de valeur du nombre configuré de travailleurs sur le site officiel est

    , et l'exemple du site officiel est

    import multiprocessing
    
    bind = "127.0.0.1:8000"
    workers = multiprocessing.cpu_count() * 2 + 1
    5Donc, pour le serveur dual-core du sujet, il doit être défini sur

    , ce qui est approprié.

    supervisor et Gunicorn sont un outil de gestion de processus qui peut être utilisé pour gérer de nombreux processus, pas seulement Redis, je l'utilise même pour gérer supervisor. En effet, il y a quelque chose de similaire à la quantité worker dans procs, appelée supervisor, qui est en fait le nombre de processus. C'est-à-dire que si vous en configurez quelques-uns,

    vous aidera à démarrer plusieurs processus. .

    supervisorIl est à noter que les travailleurs de Gunicorn et

    sont indépendants. En supposant que vous définissez les deux sur 5, il y aura en réalité 5 * 5 = 25 processus fournissant des services.

    nginx

    est généralement utilisé pour le proxy inverse et l'équilibrage de charge. Supposons que deux applications Web s'exécutent localement sur le serveur :
      .
    • http://127.0.0.1:5000Blog
    • http://127.0.0.1:8080 Forum

    Ensuite vous souhaitez accéder à ces deux applications séparément via des noms de domaine, par exemple
    • http://baidu.com/blog Blog
    • http://baidu.com/bss Forum

    Ensuite, cela peut être configuré via nginx.

    geventIO密集型 est une bibliothèque pour les coroutines. Elle est généralement utilisée dans les applications IO密集型 et n'est pas recommandée. S'il s'agit d'une application Tornado, il est recommandé d'utiliser le framework

    pour l'écriture.

    C'est tout. Il est recommandé de lire davantage de documents officiels. <🎜>

    répondre
    0
  • Annulerrépondre