芹菜:“大幅度漂移”

时间:2013-12-23 14:25:05

标签: python celery

我的分布式系统上的芹菜存在很大问题。我在不同的本地化版本中有几台机器,我的日志文件中有很多警告,如:

"来自celery @ host [...]"

的大量漂移

我能够设置日期以返回相同的值(即使机器在不同的国家/地区),但python print(utcoffset())在主服务器和节点上返回不同的结果。

如何解决这个问题?我无法找到任何好的解决方案,除了utcoffset()应返回相同的值 - 但如何?

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

我在开花时遇到了类似的问题:

[W 161208 08:42:00 state:74] Substantial drift from celery@host.com may mean clocks are out of sync.  Current drift is 10800 seconds.  [orig: 2016-12-08 08:42:00.722560 recv: 2016-12-08 05:42:00.719938]

使用的版本:

celery==3.1.23 (and 3.1.25)
flower==0.9.1
rabbitmq 3.5.6

设置:

CELERY_TIMEZONE='US/Pacific'
TIME_ZONE = 'US/Pacific'
USE_TZ = True

查看有关stackoverflow和git的所有可用问题报告和建议,但所有指示的修复我应该已经使用> 3.1.23

这是我解决的方法

我的系统和后续的bash环境正在为时区运行EST。如您所见,django应用程序运行“美国/太平洋”(PST)。这是一个3小时的差异,或10800秒。

通过将bash时区设置为PST,为了匹配django应用程序,漂移错误消失了:

export TZ="US/Pacific"

答案 1 :(得分:0)

只要您使用具有相同utcoffset()的CELERY_ENABLE_UTC不是必需的。

你在点击issue #1112吗?您可能需要更新到Celery 3.1。