gunicorn -k 参数详解 (worker type)

亦凉 2023-10-08 08:38 37阅读 0赞

网上最简单的说法:

worker_class
-k STRTING, —worker-class STRTING

要使用的工作模式,默认为sync。可引用以下常见类型“字符串”作为捆绑类:

sync
eventlet:需要下载eventlet>=0.9.7
gevent:需要下载gevent>=0.13
tornado:需要下载tornado>=0.2
gthread
gaiohttp:需要python 3.4和aiohttp>=0.21.5

看到这个我不相信你内心能有一点波澜。。。(记得选不同的模式,要下对应的包,pip install)

湾湾选手上场:

Gunicorn 在 Python 2.7 有幾種 worker type,分別是 sync、gthread、eventlet、gevent 和 tornado。

根據底層運作的原理可以將 worker 分成三種類型:

  1. sync 底層實作是每個請求都由一個 process 處理。
  2. gthread 則是每個請求都由一個 thread 處理。
  3. eventlet、gevent、tarnado 底層則是利用非同步 IO 讓一個 process 在等待 IO 回應時繼續處理下個請求。

还有湾湾大佬的性能测试:

总结来说:eventlet 和 gevent 非同步 IO 性能较好,能够适应高并发的压力。

发表评论

表情:
评论列表 (有 0 条评论,37人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Gunicorn

    Gunicorn(绿色独角兽)是一个Python WSGI的HTTP服务器。从Ruby的独角兽(Unicorn )项目移植。该Gunicorn服务器与各种Web框架兼容,实现非