当前位置: 首页 > 知识库问答 >
问题:

优步Cadence生产设置

湛宝
2023-03-14

我在找一个微服务协调器,遇到了优步卡登斯。我已经阅读了文档,并在开发设置中使用了它。

我对生产场景有几个问题:

>

  • 是否建议为工作流及其使用的不同活动设置一个专用的任务列表?或者,我们应该为所有人使用一个任务列表?这个决定会影响可扩展性或性能吗?

    当我们添加新的工作线程计算机时,在同一台计算机中为不同的活动/工作流运行所有工作线程是否是一种常见的做法?例:

    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服务?

  • 共有2个答案

    路裕
    2023-03-14

    你也可以使用Cadence头盔https://hub.helm.sh/charts/banzaicloud-stable/cadence

    我正在积极与Cadence团队合作,为社区提供操作文档。对于那些不想在K8上运行的人来说,这将是有用的,比如我自己。随着我们取得进展,我稍后将回来。

    当前草稿版本:https://docs . Google . com/document/d/1 tqylv2 gemdojzfibkeuvyaa 4 fucjuflxpojkomaiwna

    将很快发布到cadence-docs。

    郑浩博
    2023-03-14

    >

  • 除非您需要对一组活动进行单独的流控制和速率限制,否则没有理由为每个工作进程使用多个任务队列。

    正如我在1中提到的,我会将您的代码重写为:

     Worker.Factory factory = new Worker.Factory("samples-domain");
     Worker worker = factory.newWorker("HelloWorkflow");
     worker.registerWorkflowImplementationTypes(HelloWorkflowImpl.class);
     worker.registerActivitiesImplementations(new HelloActivityImpl(), new UpperCaseActivityImpl());
     factory.start();
    

    没有理由为同一活动创建多个工作人员。

    不确定Cadence。这是显示如何部署到库伯内特斯的时间留档。

    该文档尚不可用。我们时间部正在努力。

  •  类似资料:
    • 我们正在使用Uber Cadence,我们会定期在正式生产环境中遇到问题。设置如下: 一个带有Cadence客户端2.7.5的Java 14 BE Cadence服务版本0.14.1,带Postgres DB 有多个域,对于所有域,单个BE服务器注册为工作机。 日志中可见的是,有时在查询期间,节奏似乎对BE服务失去了粘性: 同时在后端,没有任何可见。但是,在此期间,如果我检查cadence Web

    • 我正在为cadence活动功能编写一个单元测试,它使用UUID从联系服务中检索联系人。我想知道我应该把什么样的背景加入到节奏活动中。 这是测试功能。 我收到的错误消息:

    • 我想实现一个延迟任务,发现了一个cadence cron例子,如何用cadence实现一个延迟任务?

    • 我是uber Cadence的新手,尝试编写一个cron调度任务。Cadence提供了一个cron附表注释(在网上找个例子),它需要一个cron表达式字符串,用于在特定时间触发方法。但是,我想让这个cron表达式按照我们在yml文件中设置的来加载。有什么方法可以做到吗?我目前只找到了这个@cron附表注释的方法来做。我还发现有一个Workflow Option可以设置cron附表。但是,不知道如何

    • 主要内容:文章目录,1.Broker端配置详解,2.Topic级别配置详解,3.Producer端配置详解,4.Consumer端配置详解文章目录 1.Broker端配置详解 1.1 必配参数 1.2 监听器相关参数 1.3 主题相关参数 1.4 线程相关参数 1.5 压缩相关参数 1.6 ZooKeeper相关参数 1.7 重平衡与选举相关参数 1.8 日志刷写相关参数 1.9 日志保留相关参数 1.10 日志滚动切片相关参数 1.11 元数据相关参数 1.12 副本相关参数 1.13 off

    • 我在Kubernetes环境中设置cadence时遇到了问题,详情如下 CADENCE_SERVER_IMAGE_VERSION:0.19.2 所有Cadence组件都在单个pod中运行 似乎Ringpop配置需要无头服务,但无头不适用于Istio 如果我只有一个Pod,那么一切都很好,但是一旦我创建了2个Pod,它们就开始争夺任务列表和碎片,这就是我的问题所在Ringpop配置: