API 优先的 Kafka 主题创建方法


要点:

  • DoorDash 工程团队通过内部 API 和基础设施服务改进了 Kafka 主题创建方法,实现了实时管道启动时间的大幅减少,节省了开发人员的时间。
  • 他们开发了一个基于 Infra Service 的 Kafka 资源创建组件,实现了通过 API 进行主题创建,极大地简化了 Iguazu 的接入时间,减少了手动干预。
  • 未来他们计划进一步完善存储自助服务平台,包括添加集中验证逻辑、智能默认值和提前捕获重复请求等功能,以改善系统的可靠性和用户体验。

这篇文章介绍了DoorDash工程团队如何改进Kafka主题创建流程。他们通过与内部基础设施资源创建服务集成来自动化Kafka资源创建,大大减少了实时管道启动时间,提高了效率。文章还介绍了他们所使用的工具和关键术语,并展望了未来计划。

DoorDash 的工程团队用内部 API Infra Service 取代了基于 Terraform/Atlantis 的方法,对 Kafka Topic 创建进行了改造。这将实时管道上线时间缩短了 95%,并节省了无数开发人员的时间。

关键术语
以下是有关我们使用的工具的定义和更多文档链接。我们将在正文中介绍这些工具的使用方法和优缺点。

  • Terraform:基础设施即代码(IaC)平台。它使用独特的 HashiCorp 配置语言(HCL)来配置基础设施资源。要配置基础设施,需要创建一个执行计划(称为 Terraform 计划),然后通过 Terraform Apply 执行该计划。
  • Atlantis: Terraform 自动化工具。运行 Terraform 计划和应用。在成功运行时合并 Terraform 拉取请求。
  • Pulumi: 与 Terraform 类似,这也是一个 IaC 平台,但没有 HCL。Pulumi 利用现有编程语言管理基础设施。
  • Prometheus:监控和时间序列数据库。专为监控应用程序和基础设施指标而设计。提供查询语言 PromQL,用于编写指标警报。
  • Chronosphere: 云原生可观察性平台。构建于 Prometheus之上。
  • Cadence 工作流:容错、有状态的工作流引擎,能够执行有向无环图(DAG)。