️ 该项目已弃用且不再维护,我们建议改用 Temporal CLI 开发服务器。️
Temporalite 是 Temporal 的一个发行版,它作为单个进程运行,运行时依赖性为零。
SQLite 支持磁盘持久化和内存模式。
请观看此视频,了解简要介绍和演示: youtu.be/Hz7ZZzafBoE [16:13] -- 演示于 11:28 开始
Temporalite 的主要目标是使本地或测试环境中运行 Temporal 变得简单、快速。
与此目标一致的功能:
从 GitHub 版本下载并提取最新版本。
启动临时服务器:
temporalite start --namespace default
此时,您应该有一个在localhost:7233
上运行的服务器和一个位于 http://localhost:8233 上的 Web 界面。
使用Temporal的命令行工具tctl
与本地Temporalite服务器交互。
tctl namespace list
tctl workflow list
使用帮助标志查看所有可用选项:
temporalite start -h
命名空间可以在启动时预先注册,以便立即使用:
temporalite start --namespace foo --namespace bar
通过tctl --namespace foo namespace register
以老式方式注册命名空间也可以!
默认情况下, temporalite
将状态保存到当前用户配置目录中的文件中。该路径可能会被覆盖:
temporalite start -f my_test.db
还可以使用内存模式。请注意,每次重新启动时所有数据都将丢失。
temporalite start --ephemeral
默认情况下,Web UI 使用 Temporalite 启动。可以通过运行时标志禁用 UI:
temporalite start --headless
要在没有静态 UI 资产的情况下进行构建,请在运行go build
时使用headless
build 标签。
一些高级用途需要临时动态配置值,这些值通常通过临时配置文件内的动态配置文件进行设置。或者,可以通过--dynamic-config-value KEY=JSON_VALUE
设置动态配置值。
例如,要禁用搜索属性缓存以使创建的搜索属性立即可供使用:
temporalite start --dynamic-config-value system.forceSearchAttributesCacheRefreshOnRead=true
要编译源代码,请运行:
go build -o dist/temporalite ./cmd/temporalite
运行所有测试:
go test ./...