如何部署aiohttp websocket?

时间:2017-06-27 08:10:03

标签: nginx python-3.5 gunicorn aiohttp

我正在使用aiohttp在websocket上工作,我使用run_app方法正常工作,并使用以下命令与gunicorn一起工作。

  

gunicorn wsredis:app --bind 0.0.0.0:1234 --worker-class   aiohttp.worker.GunicornWebWorker

当我连接到套接字时,我得到了这个响应。

Content-Type: application/octet-stream
Upgrade: websocket
Connection: upgrade
Transfer-Encoding: chunked
Sec-Websocket-Accept: sMOPKXQxUMYzguN7KBnuJxEQqFY=
Date: Tue, 27 Jun 2017 07:53:03 GMT
Server: Python/3.5 aiohttp/1.3.3

当我尝试让websocket在后台运行时出现问题。

所以,如果我做

  

gunicorn wsredis:app --bind 0.0.0.0:1234 --worker-class   aiohttp.worker.GunicornWebWorker&

它以相同的方式工作,直到我退出ssh会话。然后我从服务器得到了这个回复。

Content-Type: text/html; charset=utf-8
Content-Length: 170
Connection: close
Date: Tue, 27 Jun 2017 08:06:51 GMT
Server: Python/3.5 aiohttp/1.3.3

任何人都知道我做错了什么? 我尝试在nginx下创建一个反向代理,但它也没有工作。

1 个答案:

答案 0 :(得分:2)

解决:

问题是我在脚本中有一些打印状态,所以当我退出ssh时。脚本无法打印并引发异常。

解决方案是删除打印语句并添加记录