返回首页
最新
大家好,我们推出了 Outpost,这是一个开源的、自托管的组件,旨在处理 SaaS/API 平台的出站事件传递。
如果您正在构建一个平台,最终需要向用户发送事件(例如支付成功、资源更新、工作流变更)。可靠地实现这一点——处理重试、监控、扩展、为消费者提供良好的开发体验以及管理租户——成为了一项重要的、重复的工程任务,这会分散核心产品开发的注意力。我们构建 Outpost 来减轻这种复杂性。
Outpost 通过传统的 Webhook 和直接发送到事件目的地(如消息队列和总线)来传递事件。虽然 Webhook 无处不在,但在规模化时存在成本、可靠性模式和安全性等方面的局限性。我们观察到像 Stripe、Shopify 和 Twilio 等平台出于这些原因提供直接的总线/队列集成——这通常更便宜且更具弹性。它为喜欢编程消费的用户提供了更好的开发体验。Outpost 将这种灵活性作为核心功能开箱即用。
主要功能:
- 多种传递方式:Webhook + 原生事件目的地(SQS、Kinesis、GCP Pub/Sub、RabbitMQ、Hookdeck 等)。
- 保证交付:至少一次的交付保证,支持可配置的自动重试。
- 可观察性:内置事件日志和 OpenTelemetry 支持。
- 管理:用于目的地(端点)管理的 API;可选的用户门户,供最终用户自助服务(调试、目的地管理)。
- 多租户、主题、Webhook 安全最佳实践(签名、时间戳)等。
鉴于您很可能已经有一个系统,Outpost 与您现有的有效负载格式、HTTP 头和签名向后兼容。
它是用 Go 编写的,并采用 Apache 2.0 许可证。目前仍处于早期阶段,我们非常希望听到您的反馈——特别是在架构、所需的事件目的地或您发现的任何问题方面。
GitHub: [https://github.com/hookdeck/outpost](https://github.com/hookdeck/outpost)
文档: [https://outpost.hookdeck.com/docs](https://outpost.hookdeck.com/docs)
感谢您的关注!
<a href="https://www.biorxiv.org/content/10.1101/2025.04.13.648584v3" rel="nofollow">https://www.biorxiv.org/content/10.1101/2025.04.13.648584v3</a>