我正在跑步:
gevent==0.13.8
gevent-socketio==0.3.5-rc2
gunicorn==18.0
并遇到以下错误:
2013-11-05 06:40:00 [5671] [ERROR] Exception in worker process:
Traceback (most recent call last):
File "/home/vagrant/server/lib/python2.7/site-packages/gunicorn/arbiter.py", line 495, in spawn_worker
worker.init_process()
File "/home/vagrant/server/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 165, in init_process
super(GeventWorker, self).init_process()
File "/home/vagrant/server/lib/python2.7/site-packages/gunicorn/workers/base.py", line 112, in init_process
self.run()
File "/home/vagrant/server/lib/python2.7/site-packages/socketio/sgunicorn.py", line 14, in run
self.socket.setblocking(1)
AttributeError: 'GeventSocketIOWorker' object has no attribute 'socket'
之前的堆栈溢出问题的解决方案是“降级到版本16.0”
GeventSocketIOWorker has no attribute 'socket'
但是我不愿意这样做,因为v18.0中的补充对我来说真的很有用。
我在这里问,因为我不确定是否有一个我错过的简单解决方案。如果不是,我想我需要为枪炮提高票价?
答案 0 :(得分:0)
这是一个版本的东西。
gevent-socketio版本0.3.5-rc2于2012年7月上传至Pypi。此问题的解决方案于2013年1月发布。
我通过使用GitHub上gevent-socketio存储库的master分支解决了这个问题。为此,请将requirements.txt中gevent-socketio的行更改为
-e git+git@github.com:abourget/gevent-socketio.git#egg=gevent_socketio