烧瓶应用程序非常缓慢
我目前正在开发一款应用程序,该烧瓶网站服务器提供该应用程序。烧瓶应用程序非常缓慢
后端python代码已经变得非常庞大(对1000行代码来说,给读者一个透视图)和很多依赖关系。
其结果是,即使是简单的API调用,如本:
@app.route('/', methods = ['GET'])
def hello():
return "Sample"
结果采取接近900毫秒的服务请求。
任何人都可以给我提示提高延迟?在这种情况下会为蓝图帮助吗?
我们的依赖都是至关重要的(我们也许可以删除一个或两个人,但仅此而已)...
任何帮助是极大的赞赏
感谢, Galeej
Flask是Python的一个微框架。它不是一个Web服务器。
很多原因会导致响应缓慢。 但我不认为依赖或blueprinting是问题。 如果你可以提供你如何部署你的应用程序,这将是有益的。
我认为最关键和最简单的事情就是记录每个主流程的时间戳,然后找出哪个部分的成本很高。
我们已经使用Gevent部署了它。有没有办法在gevent中启用日志记录? – galeej
我不熟悉gevent。但是你可以在没有gevent的情况下启动一个瓶子守护进程,然后访问这个方法并检查响应时间成本。 –
您只能优化您测量的内容;所以在你做任何事情之前,先准备一些工具来确切地发现_where_问题。 –
您是使用烧瓶开发服务器,还是使用WSGI部署? –
要知道为什么事情很慢,你必须测量。花费的时间在哪里?我怀疑这是你展示的功能。 Flask并不关心其他代码是什么(也许可以通过CGI进行部署),所以代码行并不代表什么意思(即使1000行代码不是真的“非常巨大”)。你有WSGI中间件吗?请求之前的任何代理命中python?时间必须在某个地方度过。 – syntonym