2012-12-04 29 views
8

我有一个芹菜设置,使用两个不同的服务器来处理任务。我试图找出匹配完成任务的服务器的最佳方式。我查看了文档,没有看到任何有关从AsyncResult中检索主机名的信息。芹菜AsyncResult获得主机名

关于这个问题的任何意见,表示赞赏。我想要尝试的另一个选择是简单地将主机名放在每个芹菜配置中,但这种方法不是所希望的,因为它是要记住的另一件事。

回答

5

可能的解决方法将返回与任务返回值的主机名

from celery import current_task 

@celery.task 
def hello(x, y): 
    return dict(hostname=current_task.request.hostname, result='hello') 
+0

谢谢您的答复。这是我最终使用的方法。我忘了更新这篇文章。我所提出的主要问题是,我觉得主机名是一个有价值的信息,在每个回应中都应该包含这些信息。 – user1595702