内容提要
Tansu是一个与Apache Kafka API兼容的代理,使用PostgreSQL存储引擎。它可以作为现有客户端的替代品,连接到Tansu并在PostgreSQL中存储和获取消息。Tansu目前处于早期开发阶段,采用GNU AGPL许可证,使用异步Rust编写。Tansu的初始用例是相对低容量的Kafka部署,其中总消息排序可能很有用。Tansu已经设计成可以与多个存储引擎一起使用,包括PostgreSQL引擎、对象存储和分段磁盘存储。目前Tansu还存在一些问题,如未实现事务、不支持幂等消息等。
关键要点
-
Tansu是一个与Apache Kafka API兼容的代理,使用PostgreSQL存储引擎。
-
Tansu作为现有客户端的替代品,连接到Tansu并在PostgreSQL中存储和获取消息。
-
Tansu目前处于早期开发阶段,采用GNU AGPL许可证,使用异步Rust编写。
-
当前存储引擎与Apache Kafka相比有很大不同,消息不按段存储,保留和压缩策略可以立即应用。
-
消息排序在所有主题上是完全的,而不是限制在单个主题分区。
-
代理不复制消息,而是依赖于持续归档。
-
Tansu的初始用例是相对低容量的Kafka部署,总消息排序可能很有用。
-
Tansu设计为可以与多个存储引擎一起使用,包括PostgreSQL引擎、对象存储和分段磁盘存储。
-
Tansu使用特定的记录模式存储Kafka消息,包含多个字段。
-
Tansu提供了一个最小的从零开始的docker镜像,托管在Github容器注册表中。
-
可以使用常规的Apache Kafka CLI与Tansu创建主题、生产和消费消息。
-
Tansu目前已知的缺陷包括未实现事务、不支持幂等消息等。
-
消费者组协议已实现,但不适合多个Tansu代理同时使用。
-
我们将继续关注OpenMessaging基准框架的基准测试。
延伸问答
Tansu是什么?
Tansu是一个与Apache Kafka API兼容的代理,使用PostgreSQL存储引擎。
Tansu的主要用例是什么?
Tansu的初始用例是相对低容量的Kafka部署,其中总消息排序可能很有用。
Tansu与Apache Kafka的存储引擎有什么不同?
Tansu的存储引擎不按段存储消息,消息排序在所有主题上是完全的,而不是限制在单个主题分区。
Tansu目前存在哪些已知缺陷?
Tansu目前已知的缺陷包括未实现事务和不支持幂等消息等。
如何使用Tansu创建主题和消费消息?
可以使用常规的Apache Kafka CLI与Tansu创建主题、生产和消费消息。
Tansu的开发状态如何?
Tansu目前处于早期开发阶段,采用GNU AGPL许可证,使用异步Rust编写。