gpt4 book ai didi

python - 有什么方法可以从命令行读取仲裁者管理的活跃的 gunicorn 工作人员的数量?

转载 作者:行者123 更新时间:2023-12-04 16:04:15 27 4
gpt4 key购买 nike

如解释 hereGunicorn 通过 UDP 使用 statsD 协议(protocol)提供了仲裁器和工作器的可选工具。

我的问题:有没有办法在不安装 statsD 的情况下从命令行实时读取事件(即处理某些请求)gunicorn 工作人员的数量?我的服务器平均负载有时会达到峰值,我想看看有多少 gunicorn worker 在那段时间很忙?

最佳答案

Gunicorn 的默认 statsd 跟踪实际上并不跟踪活跃和非活跃的 worker 。它只是告诉你 worker 的总数,这几乎没有那么有用。

但 Gunicorn 确实提供了服务器 Hook ,让您可以在流程的各个点运行代码。这是我想出的解决方案:

sc = statsd.StatsClient(domain, port, prefix=statsd_prefix)

def pre_request(worker, req):
# Increment busy workers count
sc.incr('busy_workers', 1)

def post_request(worker, req, environ, resp):
# Decrement busy workers count
sc.decr('busy_workers', 1)

你必须把它放在你的配置文件中,然后在启动 gunicorn 时引用配置文件。

gunicorn myapp.wsgi:application --config myapp/gunicorn_config.py

如果您不想使用 statsd,您可以使用相同的触发器,但将信号传送到任何其他可以保持计数的程序,然后 watch 以在命令行上查看它。

关于python - 有什么方法可以从命令行读取仲裁者管理的活跃的 gunicorn 工作人员的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52025195/

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