Nginx、uvicorn、gunicorn 的 Socket Listen 队列大小是多少?

ID:21226 / 打印

nginx、uvicorn、gunicorn 的 socket listen 队列大小是多少?

nginx、uvicorn、gunicorn 的 socket listen 队列大小

问题:

nginx、uvicorn、gunicorn 等 http 服务器的 socket 监听队列有多大?

回答:

  • uvicorn: 默认 2048
  • gunicorn: 默认 2048
  • nginx: 默认 511

深入探讨 nginx

nginx 的 listen 队列实际上称为 backlog,它是指内核中维护的一个队列,用于存放未处理的连接请求。在 linux 系统中,backlog 的默认值受限于 net.core.somaxconn 系统参数,一般为 128。

要查看 net.core.somaxconn 的值,使用命令:

sysctl net.core.somaxconn

要修改此参数,使用命令:

sudo sysctl -w net.core.somaxconn=<new_value>

建议谨慎修改此参数,因为它可能会影响其他应用程序的性能。要永久修改,请将其添加到配置文件(例如 /etc/sysctl.conf)中。

在 ubuntu 22.04 中,net.core.somaxconn 默认值已增加到 4096。

上一篇: 如何使用抖店 cookie 实现第三方服务登录?
下一篇: 如何用 Python turtle 库绘制一个完美的八角形?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。