gpt4 book ai didi

apache-kafka - 移动和web客户端直接连接kafka是否可行

转载 作者:行者123 更新时间:2023-12-02 16:58:15 24 4
gpt4 key购买 nike

我有一个用例,我必须在其中收集用户事件并将其存储在 Kafka 中。在移动应用程序和网站中直接使用 Kafka 客户端直接向 Kafka 而不是中间层生成消息是否有效? Kafka 是为处理数百万个并发连接而设计的吗?

最佳答案

从技术上讲,您可以做到。人们不这样做的主要原因,尤其是对于移动应用程序,是因为很难保持产品的长期演进、控制其安全性甚至规模。

在过去的几年里,Kafka Clients API 发生了巨大的变化(虽然最好,但它仍然是一个变化)。它还包括授权和身份验证机制,但您可以使用这些机制做什么没有太多自由。 Kafka 并非建立在标准化协议(protocol)和与技术无关的规范(如 JMS)之上,后者可以被认为更灵活一些。

此外,与大多数现有技术一样,主要版本之间的兼容性也无法保证。可能会发生您需要长期保留多个服务器版本的情况,因为某些移动客户端仍然过时并且与特定客户端版本耦合,而客户端本身又与特定服务器版本耦合。

另一方面,出于同样的原因,您也可能需要长时间处理旧版本的消息模式,只是为了让老客户满意。

那是 HTTP,更具体地说,是 API gateway pattern , 到位。

HTTP API 更容易节流、执行速率限制、应用自定义安全策略、自定义身份验证/授权策略等。它们基于在整个 Internet 上使用的标准协议(protocol)。

当您计划使用您的后端平台进行一些合作伙伴集成时,使用 HTTP 也有一些优势。因为他们可以在不改变技术堆栈的情况下轻松做到这一点。

通过不将 Kafka 暴露给外部客户端,您以后可以在不影响客户端的情况下更改底层技术堆栈。老实说,尽管 Kafka 是一项非常出色的技术,但在互联网通信方面很难与 HTTP 竞争。 Kafka实际上提供了一个REST Proxy ,一个基于 HTTP 的客户端,可能被认为用于此类事情。

关于apache-kafka - 移动和web客户端直接连接kafka是否可行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55420626/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com