Python Gunicorn 重启问题 ?
项目使用的是 Gunicorn + Flask
的组合,但是在报错之后服务器就挂了也不会自动再重启?Python
作为动态语言不能和 PHP
那样代码挂了并不会导致整个服务器挂掉起不来的能力么?
回答:
分情况,你自己写的业务代码有 bug,当然不会导致 gunicorn 进程挂掉
但是从你这个截图,可以看到,貌似是 werkzueg 挂了,这个就不是业务代码了,gunicorn 可能不帮你处理 werkzueg 的错误
现在 python 后端生态都转成 fastapi+uvicorn了(什么 Django、flask、gunicorn、uwsgi 都是过去时了),uvicorn 用了两年了,从没有遇到过『挂掉』的问题。记得之前 gunicorn 倒是经常挂掉,可能是 gunicorn 本身的鲁棒性太差了
传统的解决方案就是加一个 supervisor 用于健康检查和 restart
如果你用 docker,就用 docker 的 restart:always 功能
最好加上多副本
如果你用 k8s,就用健康检查+多副本
回答:
用supervisor
,再加个心跳检测报警机制
以上是 Python Gunicorn 重启问题 ? 的全部内容, 来源链接: utcz.com/p/938812.html