gpt4 book ai didi

gunicorn - 我在生产中需要多少个 uvicorn worker ?

转载 作者:行者123 更新时间:2023-12-05 00:51:18 24 4
gpt4 key购买 nike

我的环境

  • 快速 API
  • Gunicorn 和 Uvicorn worker
  • AWS EC2 c5.2xlarge(8 个 vCPU)

文档

https://fastapi.tiangolo.com/deployment/server-workers/

问题

目前我在生产服务器中使用 24 个 Uvicorn 工作人员。 (c5.2xlarge)

gunicorn main:app --workers 24 --worker-class uvicorn.workers.UvicornWorker --bind 0.0.0.0:80

我了解到一个进程在一个内核上运行。因此,如果我有 8 个进程,我可以利用整个内核(c5.2xlarge 的 vCpu == 8)

我很好奇在这种情况下,如果我的进程数超过 8 个,是否有任何性能优势?

最佳答案

推荐的 worker 数量是2 x number_of_cores +1

你可以阅读更多关于它的信息 https://docs.gunicorn.org/en/stable/design.html#:~:text=Gunicorn%20should%20only%20need%204,workers%20to%20start%20off%20with .

如果您的 CPU 内核为 8 个,您应该使用 17 个工作线程。

关于异步系统的其他想法:

二次核并不是文中所说的科学数字。但想法是一个线程可以同时进行 I/O 和另一个 CPU 处理。这最大限度地利用了并发线程。即使使用异步系统,从概念上讲这也是可行的,并且应该为您提供最大的效率。

关于gunicorn - 我在生产中需要多少个 uvicorn worker ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72374634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com