0
nohup python manage.py celeryd -f queue.log 2>queue.err 1>queue.out &

1 つの要求を正常に処理すると、次のジョブをキューにポストするクライアント アプリがこのトレースバックで失敗します。

   tasks.spawn_job.delay(details)

 File "/releases/env/lib/python2.6/site-packages/celery/task/base.py", line 321, in delay
   return self.apply_async(args, kwargs)

 File "/releases/env/lib/python2.6/site-packages/celery/task/base.py", line 337, in apply_async
   return apply_async(self, args, kwargs, **options)

 File "/releases/env/lib/python2.6/site-packages/celery/messaging.py", line 248, in _inner
   return fun(*args, **kwargs)

 File "/releases/env/lib/python2.6/site-packages/celery/execute/__init__.py", line 101, in apply_async
   publisher or publish.close()

 File "/releases/env/lib/python2.6/site-packages/carrot/messaging.py", line 766, in close
   self.backend.close()

 File "/releases/env/lib/python2.6/site-packages/ghettoq/taproot.py", line 188, in close
   for consumer_tag in self._t.consumers.keys():

AttributeError: 'thread._local' object has no attribute 'consumers'

「...うまくいく」ので、rabbitMQに切り替えています

4

1 に答える 1

0

RabbitMQ に切り替えることは、おそらく良い考えです。ただし、これはゲットークのマスター ブランチで修正されたバグであることに注意してください。

于 2010-08-12T18:33:02.150 に答える