首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >删除cadence工作流和活动超时

删除cadence工作流和活动超时
EN

Stack Overflow用户
提问于 2022-09-25 18:46:19
回答 1查看 84关注 0票数 0

我正在编写一个使用cadence工作流的项目(cadenceClient3.6.2),我在2018年通过maxim观看了一个谈话,其中提到,cadence工作流是虚拟对象,最好不要将它们视为具有起点和端点的进程,因为它们可以始终处于活动状态。

代码语言:javascript
运行
复制
public interface SubscriptionWorkflow {
    @WorkflowMethod
    void manageSubscription(String customerId);
    @SignalMethod
    void cancelSubscription();
    @SignalMethod    
    void updateBillingPeriodChargeAmount(int billingPeriodChargeAmount);
    @QueryMethod    
    String queryCustomerId();
    @QueryMethod        
    int queryBillingPeriodNumber();
    @QueryMethod        
    int queryBillingPeriodChargeAmount();
}

这部分代码来自https://cadenceworkflow.io/docs/concepts/workflows/#example

在实现工作流时,需要通过如下代码指定executionStartToCloseTimoutSeconds

代码语言:javascript
运行
复制
public interface SubscriptionWorkflow {
    @WorkflowMethod(executionStartToCloseTimoutSeconds = ...)
    void manageSubscription(String customerId);
    ...
}

或者动态地喜欢

代码语言:javascript
运行
复制
WorkflowOptions options = new WorkflowOptions.Builder().setWorkflowId(...).setTaskList(...)
                .setExecutionStartToCloseTimeout(...).build();
WorkflowStub workflowStub = workflowClient.newUntypedWorkflowStub("SubscriptionWorkflow::manageSubscription",options);
workflowStub.start(...);

它也可以从cli中传递。

代码语言:javascript
运行
复制
docker run --network=host --rm ubercadence/cli:master --do test-domain workflow start --tasklist the_default_task_list --workflow_type SubscriptionWorkflow::manageSubscription --execution_timeout 3600 --input \"id\"

在不指定此超时的情况下启动工作流似乎是可能的,对于工作流中的所有活动也是如此。

如果我想让工作流在我的情况下永远存在,有没有办法不添加超时呢?其活动也一样

这是否被认为是一个坏的设计,拥有永久的工作流程,在一般情况下?

EN

回答 1

Stack Overflow用户

发布于 2022-09-29 01:30:28

我假设您的工作流将永远运行,因为它正在实现某种循环。

在这种情况下,工作流最终将构建一个如此大的历史对象,使其不再具有性能,因为每个循环迭代都会被持久化,然后再进行处理。

最终,它将打击配置限制的历史事件和失败。

不知道为什么要永远运行工作流,就很难提供解决方案。

您可以使用Workflow.continueAsNew()进行调查,它创建了一个具有相同ID的新工作流,但是可以重新启动历史记录,然后避免遇到任何限制。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73847041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档