Temporal Server architecture
所属分类 temporal
浏览量 807
Temporal Server
本身不执行应用程序代码,而是使用 队列 计时器 和 数据库 跟踪应用程序的状态
user
start workflow
register application functions
start workers
worker
pull latest tasks
hosts application functions and exxcutes them per tasks
UserWorkflowFunctions{
UserActivityFunction1()
UserActivityFunction2()
}
return results
temporal-server
timers
TaskQueues
database
temporal-server
四个服务 + 数据库
Frontend Matching History WorkerService
the History component is responsible for state transitions of individual workflows
we have Transfer Queues to be able to transactionally create tasks
a Matching component responsible for delivering tasks for queuing and matching poll for requests coming from external workers
a Front-end component because we need routing
an ElasticSearch component for indexing
a Worker component for background jobs.
Frontend gateway: for rate limiting, routing, authorizing
History subsystem: maintains data (mutable state, queues, and timers)
Matching subsystem: hosts Task Queues for dispatching
Worker service: for internal background workflows
Frontend
负责所有入站调用,包括由远程集群发起的多集群复制相关调用
grpcPort 7233 成员通讯端口6933
History 管理工作流状态转换
7234 6934
Worker service
运行复制队列、系统工作流的后台处理
7239 6939
数据库支持 Cassandra MySQL PostgreSQL
存储任务、工作流数据、事件和可见性数据
上一篇
下一篇
Akka Quickstart 例子说明
grpc jar版本不匹配问题处理实例
temporal学习笔记
temporal 监控指标
使用arthas 观察 temporal worker grpc 方法调用
temporal local activity vs activity