我已经查看了这两种方法的文档,但我不确定对于给定的应用程序来说,什么是最佳选择。我更仔细地研究了芹菜,所以这个例子将在这些术语中给出。
我的用例与这个问题类似,每个worker远程加载一个大文件(每台机器一个文件),但是我还需要worker包含持久对象。因此,如果工作线程完成任务并返回结果,则再次调用,我需要为新任务使用先前创建的变量。
在每个任务调用时重复创建对象太浪费了。我还没有看到一个芹菜的例子,让我相信这是可能的,我希望使用worker_init信号来完成这一点。
最后,我需要一个中央集线器来跟踪所有工人正在做什么。这似乎暗示了一个客户机-服务器架构,而不是由芹菜提供的,这是正确的吗?如果是这样,那么考虑到需求,IPython Parallel是一个好的选择吗?
我目前正在评估芹菜与ippython并行。关于跟踪工人正在做什么的中央枢纽,你在这里检查过芹菜花项目吗?它提供了一个网页,允许您查看队列中所有任务的状态。