微软发布用于Kafka生态系统的Azure Event Hub公开预览版
Posted Megadotnet
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微软发布用于Kafka生态系统的Azure Event Hub公开预览版相关的知识,希望对你有一定的参考价值。
在Build 2018大会期间,微软宣布它将支持Kafka客户端与Azure Event Hub的集成。负责Azure Event Hub的微软工程团队为用户提供了一个Kafka端点,用以接入事件数据。
Event Hub是微软Azure的事件摄取服务,提供了一个高度可扩展的数据流平台。开发人员可以使用Event Hub代替Kafka集群,同时能够应用捕捉(Capture)、自动扩展(Auto-Inflate)和Geo灾难恢复等功能。
有了可以支持Kafka生态系统的Event Hub,我可以使用Kafka协议,无需考虑基础设施问题,可以专注处理自己的事件。
Kafka和Azure Event Hub都是可扩展的基于事件驱动的分布式消息平台,支持多个生产者和消费者。此外,两者都可用于处理由实时事件驱动的大规模流摄取。微软消息服务架构师Clemens Vasters在博文中表示:
从概念上讲,它们都是分布式、分区和复制的提交日志服务。两者都使用分区消费模式,为并行消费者提供大规模可扩展性。两者都使用了客户端游标概念,并可扩展到非常高的工作负载。
在创建Event Hub名称空间时启用Kafka端点就可以实现Kafka客户端应用程序与Event Hub的集成。
随后,在Kafka客户端,开发人员需要将参数切换到Kafka端点(即Event Hub名称空间的完全限定名)。此外,开发人员需要将安全机制设置为PLAIN,并将Event Hub连接字符串作为密码。
bootstrap.servers={YOUR.EVENTHUBS.FQDN}:9093 security.protocol=SASL_SSL sasl.mechanism=PLAIN sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{YOUR.EVENTHUBS.CONNECTION.STRING}";
请注意,用于Kafka生态系统的Azure Event Hub公开预览版支持Apache Kafka 1.0及更高版本。不过,预览版存在一些限制,比如缺少对幂等生产者(Idempotent Producer)、HTTP Kafka API和Kafka Streams等功能的支持。
在支持Kafka端点的同时,微软也推出了一个模拟Kafka功能的门面(facade)。 Pivotal产品高级总监Richard Seroter在最近的一篇博文中写道:
Azure Cosmos DB有自己的本地接口,但也有模拟MongoDB和Apache Cassandra的接口。 Azure Event Hub最近加入了Apache Kafka接口。如果你有使用这些接口的应用程序或工具,那么就可以很方便地使用Azure Event Hub。Azure不提供MongoDB、Cassandra或Kafka服务,但它们的第一方服务可以让你不必更改代码即可获得Azure的服务。这是一个很好的策略。
Kafka对Event Hub的支持目前仅在美国东部和西部地区可用,Event Hub的价格详情请参阅定价页面。此外,有关Kafka支持的更多信息可在微软文档“用于Kafka生态系统的Event Hub”上找到。
以上是关于微软发布用于Kafka生态系统的Azure Event Hub公开预览版的主要内容,如果未能解决你的问题,请参考以下文章
微软Facebook联手发布AI生态系统,CNTK+Caffe2+PyTorch挑战TensorFlow
重磅微软Facebook联手发布AI生态系统,CNTK+Caffe2+PyTorch挑战TensorFlow