这是与GitHub 问题
鉴于:
- gunicorn 19.7.1
- Python 2.7.9
- Debian 8
- 内核 3.16.39-1+deb8u2
- 在 Google Compute Engine 上
和wsgi.py的:
def application(env, start_response):
start_response('200 OK', [('Content-Type', 'text/html')])
return ["Hello!"]
跑步$ gunicorn wsgi --log-level=debug
产量:
[2017-04-10 18:01:25 +0000] [31956] [INFO] 启动 gunicorn 19.7.1
[2017-04-10 18:01:25 +0000] [31956] [调试] 仲裁器已启动
[2017-04-10 18:01:25 +0000] [31956] [INFO] 收听地点:http://127.0.0.1:8000(31956)
[2017-04-10 18:01:25 +0000] [31956] [INFO] 使用 worker:同步
[2017-04-10 18:01:25 +0000] [31961] [INFO] 正在启动进程,进程号为 31961
[2017-04-10 18:01:25 +0000] [31956] [调试] 1 个工人
然后使用 netcat 进行测试,例如echo -en "GET /ping HTTP/1.0\n\n\n" | nc localhost 8000
超时:
[2017-04-10 18:07:36 +0000] [31977] [严重] 工人超时 (pid:31982)
[2017-04-10 18:07:36 +0000] [31982] [INFO] 工作人员退出 (pid: 31982)
[2017-04-10 18:07:36 +0000] [31985] [INFO] 正在启动进程,进程号为 31985
或者,在等待时向 nc 实例发送 SIGINT(ctrl-c)可产生以下结果:
[2017-04-10 18:01:28 +0000] [31961] [DEBUG] 忽略客户端过早断开连接。'GET /ping HTTP/1.0\n\n\n' 之后没有更多数据
使用--spew
并没有阐明任何明显的东西。
答案1
虽然自从昨天发布这个问题以来我没有做任何改变,但它今天仍然有效。
您的猜测与我的一样好,但由于无法重现,因此我决定结束此猜测。
如果再次发生,我会重新打开。