Celery进程的“Worker”以“退出码1”退出

6

celery worker(Flask应用程序的一部分)在启动之前被终止:

Celery配置参数(Windows,Celery 3.1.25,Rabbitmq(最新版本))

flask_app = Flask(__name__)
flask_app.secret_key = 'some_secret'
flask_app.config['CELERY_BROKER_URL'] = 'amqp://localhost/'
flask_app.config['CELERY_RESULT_BACKEND'] = 'amqp://localhost/'

flask_app.config['CELERY_ACCEPT_CONTENT'] = ['json']
flask_app.config['CELERY_TASK_SERIALIZER'] = 'json'
flask_app.config['CELERY_RESULT_SERIALIZER'] = 'json'
flask_app.config['CELERY_IGNORE_RESULT'] = True

flask_app.config['CELERY_ROUTES'] = {'task': {'queue': 'agent_queue'}}
flask_app.config['CELERY_IMPORTS'] = ['Monitor.app']

结果:

 -------------- celery-01 v3.1.25 (Cipater)
---- **** -----
--- * ***  * -- Windows-7-SP1
-- * - **** ---
- ** ---------- [config]
- ** ---------- .> app:         MonitorSetup.app:0x4aad030
- ** ---------- .> transport:   amqp://guest:**@localhost:5672//
- ** ---------- .> results:     amqp://
- *** --- * --- .> concurrency: 4 (prefork)
-- ******* ----
--- ***** ----- [queues]
 -------------- .> celery           exchange=celery(direct) key=celery


[tasks]
  . Monitor.app.task

[2017-12-12 11:39:08,266: INFO/MainProcess] Connected to amqp://guest:**@127.0.0.1:5672//
[2017-12-12 11:39:08,390: INFO/MainProcess] mingle: searching for neighbors
[2017-12-12 11:39:09,496: INFO/MainProcess] mingle: all alone
[2017-12-12 11:39:09,526: WARNING/MainProcess] celery-01 ready.
[2017-12-12 11:39:11,930: ERROR/MainProcess] Process 'Worker-4' pid:15512 exited with 'exitcode 1'
[2017-12-12 11:39:11,930: ERROR/MainProcess] Process 'Worker-3' pid:11704 exited with 'exitcode 1'
[2017-12-12 11:39:11,931: ERROR/MainProcess] Process 'Worker-2' pid:18656 exited with 'exitcode 1'
[2017-12-12 11:39:11,931: ERROR/MainProcess] Process 'Worker-1' pid:6060 exited with 'exitcode 1'
[2017-12-12 11:39:15,244: ERROR/MainProcess] Process 'Worker-8' pid:13520 exited with 'exitcode 1'
[2017-12-12 11:39:15,246: ERROR/MainProcess] Process 'Worker-7' pid:11880 exited with 'exitcode 1'
[2017-12-12 11:39:15,249: ERROR/MainProcess] Process 'Worker-6' pid:9488 exited with 'exitcode 1'
[2017-12-12 11:39:15,250: ERROR/MainProcess] Process 'Worker-5' pid:11712 exited with 'exitcode 1'

我已经使用celery相当长的时间了,但以前从未遇到过这些问题。


你使用的是哪个版本的Windows?我在Windows 7上已经完美地运行了这个程序,但在Windows Server 2008上运行完全相同的代码会导致这个问题。 - Tom Malkin
1个回答

4
我认为这是因为 celery 3.1.25 自带 billiard 3.3 的原因。
如果您将该软件包升级(在撰写本文时升级到 3.5),则服务应该可以正常工作。
pip install --upgrade billiard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接