ghcr.io/hatchet-dev/hatchet/hatchet-admin:v0.110.10-amd64
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
用于后台任务、AI代理和持久化工作流的编排引擎
Hatchet Cloud · 文档 · 网站 · 问题反馈
什么是Hatchet?
Hatchet 是一个用于大规模编排后台任务、AI代理和持久化工作流的平台。它支持使用 Python、TypeScript、Go 和 Ruby 编写的应用程序,可通过 Hatchet Cloud 作为服务使用,或通过 自托管 部署。Hatchet 提供完整的平台功能,包括任务队列、自动重试、持久性、实时监控、告警和日志记录。
快速开始
开始使用 Hatchet 最快的方式是注册 Hatchet Cloud 进行试用!即使您计划自托管,我们也建议您先尝试,以便了解完整部署的 Hatchet 平台是什么样的。
要在本地运行 Hatchet,最快的设置路径是安装 Hatchet CLI(适用于 MacOS、Linux 或 WSL)——请注意,这需要在本地安装 https://www.docker.com/get-started 才能运行:
curl -fsSL https://install.hatchet.run/install.sh | bash
hatchet --version
hatchet server start
要查看自托管和云服务的完整文档,请参阅 文档。
何时应使用 Hatchet?
您可以使用 Hatchet 运行后台任务、AI代理或其他类型的长时间运行的工作流。它旨在成为一个功能完备的解决方案,适用于正确性、可靠性、水平可扩展性和可观测性至关重要的系统。从技术角度来看,它与其他解决方案的不同之处在于,它使用 Postgres 作为任务运行时和可观测性系统的持久层,这使得自托管变得特别容易。
有关使用 Hatchet 构建工作流的端到端示例,请查看我们的 食谱。
Hatchet 功能
后台任务
- 后台任务:Hatchet 支持定义为简单函数的一次性后台任务。它支持“即发即弃”和“即发即等”任务,并带有订阅功能
- 重试:灵活且可配置的任务重试策略,可选 指数退避
- Cron 任务 和 计划运行,用于在未来某个时间点调度任务
- 任务路由,基于严格条件(如工作节点标签)或更复杂的加权调度规则(使用工作节点亲和性)
- 基于事件的触发 和 监听器,用于构建事件驱动的高度分布式系统
- 基于 Webhook 的触发,用于轻松从上游数据源触发 Hatchet 任务
任务编排和工作流
- 持久化任务,用于构建可容错、长时间运行且能轻松从故障中恢复的工作流
- DAG(有向无环图),用于构建数据管道和简单工作流。请参阅 我们的指南,了解如何在持久化任务和 DAG 之间进行选择
- 使用 持久化睡眠、事件等待 或两者结合的复杂暂停/恢复条件
扩展性
- 优先级,确保关键任务可以在对延迟不敏感的任务(如回填作业)之前运行
- 速率限制,用于处理第三方 API,甚至使用动态速率限制实施每用户速率限制
- 公平调度,使用 Hatchet 的并发策略,可基于动态键为任务设置并发限制
- 工作节点槽位,确保工作节点不会承担超出其处理能力的工作
监控、可观测性和管理
- 实时 Web UI,包含告警、监控和日志记录功能
- OpenTelemetry(使用 Hatchet 的内置收集器或外部目标)
- Prometheus 指标
- 默认支持多租户,因此单个 Hatchet 实例可支持多个团队
- 用户和角色
Hatchet Cloud 功能
- 自动扩展和按使用付费计划
- 多区域部署
- SSO(单点登录)
- 监控、日志记录和可观测性的性能提升
文档
最新文档可在 [***] 查看。
社区与支持
- *** - 最适合与维护者联系和社区交流
- https://github.com/hatchet-dev/hatchet/issues - 用于提交错误报告
- https://github.com/hatchet-dev/hatchet/discussions - 用于发起适合异步交流的深入技术讨论
- 电子邮件 - 最适合获取 Hatchet Cloud 支持以及账单、数据删除等问题的帮助
Hatchet 与……的比较
Hatchet 与持久化执行平台(Temporal、DBOS)的比较
Hatchet 的 持久化任务 功能可直接替代 Temporal 或 DBOS 工作流。您还将获得:
- 使用 OpenTelemetry、监控和日志记录实现持久化任务的端到端可观测性
- 为大规模运行工作流构建的功能,如速率限制、复杂路由和工作节点级槽位控制
- 开箱即支持多租户、用户和角色
除了使持久化执行更易于使用外,Hatchet 还可用作通用队列、基于 DAG 的编排器、持久化执行引擎,或同时作为这三者,使团队能够在单一平台中集中管理其异步和后台处理。
Hatchet 与任务队列(Celery、BullMQ)的比较
像 BullMQ 和 Celery 这样的传统任务队列会为了吞吐量而牺牲持久性。任务在执行期间会持久化在 broker(通常是 Redis 或 RabbitMQ)上,但执行后不会持久化。这使得构建复杂工作流变得困难,因为没有持久化的中间状态。也难以恢复和重放已失败并从队列中移除的任务,导致需要自定义管理工具来大规模使用这些库。
另一方面,Hatchet 是一个持久化任务队列,这意味着它会持久化所有执行的历史记录(直至定义的保留期),从而支持轻松的监控、调试和持久化任务功能。Hatchet 的持久化功能会增加一些开销:虽然 Hatchet 已通过高达 10k 任务/秒的负载测试,但它比基于 Redis 或 RabbitMQ 构建的系统消耗更多资源,而后两者可以达到更高的吞吐量。
Hatchet 与基于 DAG 的平台(Airflow、Prefect、Dagster)的比较
这些工具通常是为数据工程师设计的,并非作为高容量应用的一部分运行。它们通常具有更高的延迟和成本,其主要卖点是与常见数据存储和连接器的集成。
何时使用 Hatchet:当您希望使用基于 DAG 的框架、编写自己的集成和函数,并且需要更高的吞吐量(>100/秒)时
何时使用其他基于 DAG 的平台:当您希望使用开箱即用的其他数据存储和连接器时
问题反馈
遇到任何错误,请通过 GitHub issues 提交。
我想贡献代码
请在 *** 的 #contributing 频道中告诉我们您感兴趣的工作内容。这将帮助我们确定项目方向,并使协作更加容易!
镜像拉取常见问题
功能
错误码
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务