Nor*_*don 5 azure apache-kafka azure-eventhub-capture
我正在评估 Azure 事件中心与 Kafka 作为服务代理的使用。我希望我能够并排创建两个本地应用程序,一个使用 Kafka 使用消息,另一个使用 Azure 事件中心。我已经设置了一个 docker 容器,它是一个 Kafka 实例,我正在使用我的 Azure 帐户设置 Azure 事件中心(据我所知,没有其他方法可以为 Azure 创建本地/开发实例事件中心)。
有没有人有关于这两者的任何信息,在比较它们的功能时可能有用?
小智 13
无法直接添加评论,但目前评分最高的答案有这行
Kafka 可以有多个主题,每个 Azure 事件中心都是一个主题。
这是一种误导,因为它听起来好像你不能拥有多个主题,但其实你可以。根据https://learn.microsoft.com/en-us/azure/event-hubs/event-hubs-for-kafka-ecosystem-overview#kafka-and-event-hub-conceptual-mapping一个“事件中心”是一个主题,而“事件中心命名空间”是 Kafka 集群。
小智 11
这个决定通常是由更广泛的架构选择驱动的,如果您选择 azure 作为您的 iaas 和 paas 解决方案,那么事件中心在 azure 生态系统中提供了很好的集成,但如果您不希望供应商锁定 kafka 是更好的选择。
在操作上,如果您想要完全托管的服务,那么使用事件中心它是开箱即用的,但使用 kafka,您还可以通过融合平台获得此服务。
成熟度方面,kafka 比较老,并且拥有较大的社区,您可以获得更大的支持。
就功能而言,kafka 生态系统提供了什么 azure 生态系统具有这些功能,但如果您仅谈论事件中心,那么与 kafka 相比,它缺少一些功能
我认为这个链接可以帮助您扩展您的理解https://learn.microsoft.com/en-us/azure/event-hubs/event-hubs-for-kafka-ecosystem-overview
小智 6
Apache Kafka 是您通常需要安装和操作的软件,而事件中心是一项完全托管的云原生服务。无需管理和监控服务器、磁盘或网络,也无需考虑或配置代理。您创建一个命名空间,它是具有完全限定域名的端点,然后在该命名空间内创建事件中心(主题)。有关事件中心和命名空间的详细信息,请参阅事件中心功能。作为云服务,事件中心使用单个稳定的虚拟 IP 地址作为端点,因此客户端不需要了解集群中的代理或计算机。尽管事件中心实现相同的协议,但这种差异意味着所有分区的所有 Kafka 流量都可预测地通过此一个端点路由,而不需要集群的所有代理进行防火墙访问。事件中心的规模由您购买的吞吐量单位数量控制,每个吞吐量单位允许您每秒 1 兆字节,或每秒 1000 个事件的入口量和两倍的出口量。如果您使用自动膨胀功能,当您达到吞吐量限制时,事件中心可以自动扩展吞吐量单位;此功能也适用于 Apache Kafka 协议支持。
您可以在此处找到有关功能比较的更多信息 - https://learn.microsoft.com/en-us/azure/event-hubs/event-hubs-for-kafka-ecosystem-overview
Kafka 可以有多个主题,每个 Azure 事件中心都是一个主题。Kafka 在容器内运行意味着您必须对其进行管理。Azure 事件中心是一个 PaaS,这意味着他们管理平台端。如果您不知道如何使 Kafka 变得冗余、可靠和可扩展,您可能希望使用 Azure 事件中心或任何提供类似发布/订阅模型的 PaaS。事件中心平台已经具备可扩展性、可靠性和冗余性。
| 归档时间: |
|
| 查看次数: |
6780 次 |
| 最近记录: |