UWSGI响应时间导致504网关超时

问题描述 投票:0回答:1

我正在使用此docker-container与Nginx一起运行UWSGI。在大约16小时的正常运行时间后,UWSGI服务器的响应时间突然激增,我收到了504网关超时的消息。 Nginx服务的所有页面和文件仍然可以访问。到目前为止,我为解决此问题所做的所有尝试均未成功。除了由于代码运行时而导致超时的人以外,我没有在网上找到任何东西。这个项目似乎并非如此,因为Graylog告诉我,我的方法需要不到100毫秒的时间才能完成。但是uwsgi在调用我的方法之前或之后似乎在做一些非常耗时的事情。有没有人遇到过这种问题?

Code

docker nginx uwsgi
1个回答
0
投票

事实证明,psycopg2在某些情况下会发生内存泄漏(至少这是我们所怀疑的)。添加了探查器后,我们发现psycopg2 cursor.execute方法在经过一段正常运行时间后需要> 50s的时间才能完成。一点点研究导致我们遇到了一些内存泄漏问题,似乎在初始化没有名称的游标时就会发生。遗憾的是,由于我们使用的提交模式,我们不能只为光标分配一个名称。我们通过放弃连接池并手动处理连接刷新来解决该问题,因此由于连接打开的时间不够长,因此不会出现内存泄漏问题...

© www.soinside.com 2019 - 2024. All rights reserved.