我有一个Flask应用程序在gevent.WSGIServer中运行得很好。对于这种顺利的开发体验,我希望启用热重新加载,例如,如果python加载的python文件在磁盘上发生更改,我希望服务器重新加载。由于我使用的SSE事件必然会阻止请求,所以我无法运行本来非常好的Flask内置调试服务器。在生产中我不想热再装.
我找到了@run_with_reloader装饰器,但是在一条代码注释中,作者建议不要使用这个函数;2)当我的主py文件中的任何函数都启用这个装饰器热重加载时,不管函数是否被调用,都会启用该函数。
如何在开发过程中重新加载gevent.WSGIServer?
发布于 2017-09-25 17:02:44
我也有同样的用例。我发现了这个,虽然它使用的是扭曲的:https://gist.github.com/ianschenck/977379a91154fe264897,但它是有效的。类似的方法也适用于gevent。
发布于 2018-12-17 14:03:01
我认为这是最好的答案。为我工作。
import gevent.wsgi
import werkzeug.serving
@werkzeug.serving.run_with_reloader
def runServer():
app.debug = True
ws = gevent.wsgi.WSGIServer(('', 5000), app)
ws.serve_forever()附加原始链接:http://flask.pocoo.org/snippets/34/
https://stackoverflow.com/questions/43677612
复制相似问题