504网关超时烧瓶socketio

时间:2018-02-16 18:54:33

标签: flask flask-socketio

我正在使用flask-socketio服务器,该服务器卡在仅返回504 s(网关超时)的状态。我们在服务器前使用AWS ELB。我想知道是否有人不介意如何调试此问题的一些提示。

其他症状:

  • 此问题不会一直发生,但一旦开始发生,只会从请求中收到504个。重启过程似乎解决了这个问题。
  • 当我在服务器上运行netstat -nt时,我看到许多条目的rec-q超过100卡在CLOSE_WAIT状态
  • 当我在流程上运行strace时,我只会看到selectclock_gettime
  • 当我在服务器上运行tcpdump时,我可以看到有效的请求进入服务器
  • AWS健康状况检查成功恢复

编辑: 我还应该添加两件事:

  • flask-socketio的服务器用于生产(不是gunicorn或uWSGI)
  • Python的daemonize函数用于守护应用程序

1 个答案:

答案 0 :(得分:1)

似乎切换到gunicorn作为wsgi服务器修复了问题。这可能是flask-socketio wsgi服务器的一个问题。