小编Lon*_*eng的帖子

如何为 Cadence 活动(本地和常规活动,带或不带重试)设置适当的超时值?

所以有这么多的超时值:

对于当地活动

  • 计划关闭超时

对于无需重试的常规活动

  • 计划开始超时
  • 计划关闭超时
  • 开始到关闭超时
  • 心跳超时

然后retryOptions中有更多值:

  • 过期时间间隔
  • 初始间隔
  • 退避系数
  • 最大间隔
  • 最大尝试次数

retryOptions 可以应用于 localActivity 或常规活动。

我如何将它们一起使用,有何期望?

cadence-workflow uber-cadence

5
推荐指数
1
解决办法
3321
查看次数

在 Cadence/Temporal 工作流程中处理信号的最佳方式/模式是什么

当像文档建议那样使用信号时:

public class MyWorkflow{
   public Output myWorkflwMethod(Input input){
      ...
   }

   public void mySignalMethod(request){
     // do actual processing here. 
     ...
   }
}
Run Code Online (Sandbox Code Playgroud)

我可能会遇到以下问题:

  1. 我想保证 FIFO 一次处理一个(在同一信号名称内或跨所有信号名称)
  2. 我想处理signalWithStart 的“竞争条件”,其中信号方法调用得太早
  3. 我想安全地重置工作流程。重置后,信号可以在历史早期重新应用
  4. 我想确保工作流程不会在处理信号之前提前完成

cadence-workflow temporal-workflow uber-cadence

5
推荐指数
1
解决办法
2294
查看次数

多线程在 Cadence/Temporal 工作流程中如何工作?

在 Cadence/Temporal 工作流程编程中:

  • 不允许使用本机线程库。例如,在Java中,线程必须通过Async.procedure或创建,Async.function而在Golang中,线程必须通过 创建workflow.Go。所以为什么?
  • 是否存在像使用本机线程那样的竞争条件?例如,应该使用Hashtableor来代替线程安全?ConcurrentHashMapHashMap

cadence-workflow temporal-workflow uber-cadence

4
推荐指数
1
解决办法
1502
查看次数

2
推荐指数
1
解决办法
1482
查看次数