【发布时间】:2021-01-03 11:35:53
【问题描述】:
我在寻找微服务编排器时遇到了 Uber Cadence。我已经阅读了文档并在开发设置中使用了它。
我有几个关于生产场景的问题:
-
是否建议为工作流及其使用的不同活动设置一个专门的任务列表?或者,我们应该为所有人使用一个任务列表吗?此决定是否会影响可扩展性或性能?
-
当我们添加一个新的工作机器时,在同一台机器上为不同的活动/工作流运行所有工作人员是一种常见的做法吗?示例:
Worker.Factory factory = new Worker.Factory("samples-domain"); Worker helloWorkflowWorker = factory.newWorker("HelloWorkflowTaskList"); helloWorkflowWorker.registerWorkflowImplementationTypes(HelloWorkflowImpl.class); Worker helloActivityWorker = factory.newWorker("HelloActivityTaskList"); helloActivityWorker.registerActivitiesImplementations(new HelloActivityImpl()); Worker upperCaseActivityWorker = factory.newWorker("UpperCaseActivityTaskList"); upperCaseActivityWorker.registerActivitiesImplementations(new UpperCaseActivityImpl()); factory.start();或者我们应该在专用机器上运行每个活动/工作流工作者?
-
在单个工作机器中,我们可以为给定的活动创建多少个工作人员?例如,如果我们有活动 HelloActivityImpl,我们是否应该在同一台工作机器上为它创建多个工作人员?
-
我没有找到任何用于生产设置的文档。例如,如何在生产中安装和配置 Cadence 服务?如果有人能指导我找到正确的材料,那就太好了。
-
在一些视频教程中提到,为了实现高可用性,我们可以跨多个数据中心设置 Cadence 服务。如何为此配置 Cadence 服务?
【问题讨论】:
标签: cadence-workflow temporal-workflow