Confluent's Kafka REST Proxy vs Kafka Client



我很好奇Confluent的Kafka REST代理和用kafka官方客户端库实现的生产者/消费者的优缺点。 我知道Confluent的Kafka REST代理用于管理任务和kafka客户端不支持的语言。

那么,kafka 客户端的优势是什么?

本机客户端的一个优点是通过直接 TCP 到代理的原始性能,而不是在 REST 代理中进行往返 HTTP 序列化 + JVM 序列化。

上述方法的一个缺点可能是用各种语言为所有客户端维护安全策略;否则任何人都可以制作和使用任何人的其他主题。如果没有多租户 Kafka 群集,这可能不是一个因素。与 REST 代理相比,只有一个 SSL 证书,但在主题上使用 ACL 可能仍然是一个好主意。

REST 代理的明显优势是,任何 HTTP 客户端都有一个标准接口可以进行交易。除了代理本身支持的内容外,无需区分客户端中的 Kafka 版本或支持的 API。但是,随着时间的推移,随着客户端的开发,这将变得越来越不需要。

另外,您之前的问题Kafka REST Proxy API有什么好处?

使用REST 代理,运行管理任务要容易得多,而无需使用较低级别的 Kafka 协议。例如,您可以执行诸如查看群集状态之类的操作。 它基本上允许您以更简单的方式执行与较低级别相同的操作。

最新更新