部署概述
了解如何在不同环境中部署和管理 Temporal 集群。
部署选项
Temporal 支持多种部署方式,从本地开发环境到生产级 Kubernetes 集群, 您可以根据需求选择合适的部署方案。
部署选项对比
本地部署
适合开发和测试,快速启动
- ✓ 使用 Docker Compose
- ✓ 单机运行
- ✓ 内置 PostgreSQL
- ✓ Web UI 开箱即用
- ✗ 不适合生产环境
Docker 部署
适合小型生产环境,易于管理
- ✓ 容器化部署
- ✓ 支持外部数据库
- ✓ 易于扩展
- ✓ 适合单服务器
- ✗ 有限的高可用性
Kubernetes 部署
适合大规模生产环境,高可用
- ✓ 完整的高可用性
- ✓ 自动扩展
- ✓ 服务发现
- ✓ 自愈能力
- ✓ 企业级功能
核心组件
Temporal Server
核心服务,负责工作流和活动的编排、状态管理和事件历史记录。 它包含 Frontend Service、History Service 和 Matching Service。
数据存储
Temporal Server 使用 PostgreSQL、MySQL 或 Cassandra 作为后端数据存储, 保存工作流状态、事件历史和元数据。
Temporal Web UI
提供可视化的 Web 界面,用于查看工作流执行历史、搜索工作流、 调试问题和监控集群状态。
Workers
运行工作流和活动代码的进程。Workers 连接到 Temporal Server, 接收任务并执行实际的业务逻辑。
系统要求
最低要求
CPU
2 核(开发)/ 4 核(生产)
内存
4GB(开发)/ 8GB(生产)
磁盘
20GB SSD
网络
1 Gbps
数据库选择
PostgreSQL
推荐用于生产环境
开源、功能强大、性能优异。是 Temporal 官方推荐的生产数据库。
推荐MySQL
广泛支持
流行的关系型数据库,与 PostgreSQL 类似的功能和性能。
支持Cassandra
大规模部署
分布式 NoSQL 数据库,适合超大规模部署场景。
可选高可用性考虑
1
多副本部署
部署多个 Temporal Server 副本,确保服务高可用性。
2
数据库集群
使用数据库主从复制或集群模式,确保数据持久化和高可用性。
3
负载均衡
使用负载均衡器分发流量,提高系统吞吐量和可用性。
4
监控和告警
配置监控和告警系统,及时发现和处理问题。