conductor FAQ

时间:2023-03-31 19:42:56

在一段时间后(如1小时,1天等),您如何安排将任务放入队列中?

轮询任务后,更新任务的状态IN_PROGRESS并将其callbackAfterSeconds设置为所需的时间。任务将保留在队列中,直到指定的第二个工作者轮询为止,它将再次接收到它。

如果为该任务设置了一个callbackAfterSeconds超时值,超过超时值,将导致任务为TIMED_OUT。

工作流在运行状态多长时间?我可以拥有持续运行数天或数月的工作流程吗?

是。只要将任务超时设置为处理长时间运行的工作流程,它将保持运行状态。

我的工作流无法从缺少任务错误开始

确保通过/metadata/taskdefsAPI注册所有的任务。添加任何缺少的任务定义(如错误报告),然后重试。

我的工人在哪里跑?指挥如何运作我的任务?

指挥员不运行工人。当任务被安排时,它将被放置在由Conductor维护的队列中。工作人员需要使用/tasks/pollAPI 轮询任务,并且定期使用API执行任务的业务逻辑,并使用POST /tasksAPI调用报告结果。然而,导体将在导体服务器上运行系统任务

如何安排工作流程在特定时间运行?

导体不提供任何调度机制。但是,您可以使用任何可用的调度系统将REST调用到Conductor来启动工作流。或者,将消息发布到支持的事件系统(如SQS)以触发工作流。
有关事件的更多细节。

如何设置Dynomite集群?

访问Dynomite的github页面。 https://github.com/Netflix/dynomite查找有关设置和支持机制的详细信息。

可以使用Ruby / Go / Python的指令吗?

是。工作人员可以写任何语言,只要他们可以通过HTTP端点轮询和更新任务结果。

指挥机构为Java和Python提供了框架,以简化轮询和将状态更新到Conductor服务器的任务。

注意: Python客户端目前正在开发中,并没有针对生产用例进行测试。

如何获得Dynomite的帮助?

访问Dynomite的github页面。 https://github.com/Netflix/dynomite查找有关设置和支持机制的详细信息。