问题标签 [temporal-workflow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
373 浏览

deployment - 构建和部署时态工作流的最佳实践

我正在使用 Temporal 的 GO SDK,我想知道打包和部署工作流的最佳实践方式是什么。

我可以将我所有的工作流和活动捆绑到一个 Worker 服务中吗?这样做有什么限制,还是建议单独部署/构建每个工作流?

我还想公开 http 端点来触发工作流。如果我在 Kubernetes (GKE) 上部署 Temporal,公开入口/服务资源,那么执行此操作的最佳做​​法是什么?

谢谢!

0 投票
1 回答
141 浏览

database - 多个时间实例可以由同一个数据库支持吗?

这是一个“是/否”的问题:多个时间实例可以由同一个数据库支持吗?

我想使用单个(HA,异地冗余)云 SQL 来存储工作流状态,多个(异地冗余)工作人员共享该数据库。

我在文档中找不到任何回答这个问题的东西。

0 投票
2 回答
258 浏览

cadence-workflow - 何时使用 selector.AddReceive、selector.Select

希望能澄清一下我应该何时使用selector.AddReceiveand selector.Select。这可能不是节奏问题,但也许我缺少一些关于 Golang 的知识。

因为selector.Select我认为基本思想是我们等待通道的下一个输出。不完全确定是什么selector.AddRecieve

例如,在节奏示例中,local_activity 链接并粘贴在下面:

我们不使用任何selector.AddReceive

但是,在此处的示例中,它也使用了信号通道:根据外部输入更改超级节奏睡眠时间

我也会在这里粘贴代码

你可以看到有selector.AddReceive,我不完全确定目的是什么或何时应该使用它。

我正在尝试向我的工作流程发送一个信号,允许我延长到期时间。意思是,它会延迟一个呼叫ExpirationActivity

当按照这个例子(结合我当前的代码)时,只要我发送信号重置,似乎timerFired立即设置为真。

我当前的代码如下(我已经删除了一些不相关的 if 语句),以前,我只使用了一个 实例selector.Select,但是在某个地方我的代码没有正常运行。

0 投票
1 回答
74 浏览

temporal-workflow - 如何使用 Go 在 Temporal 中测试超时?

我试图测试活动超时,但我不明白 RegisterDelayedCallback 是如何工作的:

我的工作流程

我的活动

测试

ActivityOptions 的所有属性超时一分钟,回调有十分钟,但测试完成正常。

谁能解释我为什么会有这种行为?

谢谢。

0 投票
1 回答
427 浏览

temporal - 时间:如何以编程方式创建命名空间?

可以通过 CLI 创建命名空间,但如何使用 Java SDK 来创建?

0 投票
1 回答
42 浏览

cadence-workflow - 时间:在活动实现中使用时间相关的功能

文件说

仅使用 Workflow.currentTimeMillis() 来获取工作流中的当前时间。

它是否也仅适用于工作流或活动?我可以System.currentTimeMillis()在活动实施中使用吗?

0 投票
1 回答
634 浏览

temporal-workflow - 时间:何时以及如何使用本地活动?

官方时间文件谈论当地活动。但是,目前还不是很清楚本地活动的优点或局限性以及如何对其进行编码?

0 投票
0 回答
43 浏览

java - 不导入来自 build.gradle 的依赖项

我正在尝试导入 Java SDK for Temporal ( www.temporal.io )。我只遵循他们快速入门指南的前几行。它是使用 Spring Initializr 生成的 Spring Boot 应用程序。我的 build.gradle 看起来像这样:

然而,奇怪的是,如果我在没有Spring Boot 的情况下创建应用程序,那么 Gradle 将识别时间并允许我在我的类中进行导入。

那么 Spring Bootbuild.gradle文件和配置是什么,不允许我进行导入?

0 投票
1 回答
112 浏览

cadence-workflow - 允许完成后取消 CronSchedule 工作流程

如果我有一个使用多个活动指定的 Cronschedule 的工作流,是否只有在工作流中的所有活动都已执行后才能取消/终止它。我也不希望它再具有 ContinueAsNew 状态。

0 投票
0 回答
36 浏览

temporal-workflow - 全局命名空间文档

时间的新手

我想了解 Temporal Framework 的灾难恢复功能。

docs看来,Temporal 提供了一种使用命名空间(全局命名空间)故障转移到其他集群的方法。文档没有提供在全局命名空间下配置多集群环境的方法。

任何有关全球命名空间的文档/博客文章/视频的线索?