Debezium系列之:Debezium 异步引擎
Debezium 提供了一种从项目一开始就直接在 Debezium 内运行连接器的方法。随着时间的推移,它的提供方式已经发生了变化,并且仍在不断发展。本文将描述这方面的另一个演变步骤 - Debezium 引擎的新实现。
一、Debezium引擎历史
- 直接在 Debezium 中运行连接器的功能在第一次 Debezium 提交中并不存在,但在 Debezium 开发的早期阶段就添加了。这个EmbeddedEngine主要用于测试。然而,随着时间的推移,它已经发展成为一个成熟的连接器运行时平台,支持存储偏移量、模式历史记录等。后来,定义了 DebeziumEngine 的公共 API。该接口将面向用户的 API 与实现解耦,并提供了用不同的实现替换实现的能力。引入 Debezium 引擎 API 后不久,创建了一个新的Debezium server。虽然 EmbeddedEngine 必须包装到另一个会使用记录的应用程序中,但 Debezium server提供了一种在 Kafka Connect 集群外部运行 Debezium 的方法,而无需此类包装器。 Debezium 服务器提供了多个接收器,因此用户可以开箱即用地使用服务器,无需任何进一步的编码,但 Debezium 服务器仍然由 Debezium 引擎提供支持。随着 Debezium server的普及,越来越多的接收器被添加。这导致Debezium server分离到单独的 GitHub 项目中。Debezium server 存储库的分离是最近发生的(DBZ-6049)。 Debezium server 发展的最新补充是 Debezium operator的实现。它允许在