微软 Azure Event Hubs 单月处理交易超过 1 万亿次

  • Kent Weare
  • 张晓鹏

2015 年 9 月 27 日

话题:DevOps语言 & 开发架构

微软 Azure 上消息服务系统 Event Hubs 在六月份每天大约处理 150 TB 的数据和 300 亿条消息,或者说每秒处理 375000 条消息,这些数据是微软 Azure Service Bus 产品团队提供的。

Azure Event Hubs 是微软 Azure 公有云上发布 / 订阅消息的注入引擎。Event Hubs 使用 AMQP 作为基础协议,并允许同其它的 AMQP 1.0 库和代理(broker)进行互操作。这项基于云的服务在 2014 年 11 月份发布了通用版本之后,于今年的 8 月份到达处理交易量的顶峰,即每天可以处理 600 亿次交易。

开发者可以通过 REST API、.NET SDK 或者 Apache Qpid 客户端库来访问 Event Hubs 服务。除了这些,一个基于 Proton 创建的 C 语言的 SDK 也规划于近期提供。

为了更好地了解这个里程碑事件的意义,以及微软此项业务后续发展的方向,InfoQ 接触并采访了微软的高级项目经理 Dan Rosanova。

InfoQ: 对于运行如此大规模的消息平台来说,什么方面的问题是最具挑战的?

Dan: 最大的挑战是你要跟上需求,我们经常要经历周与周间两位数的处理量增长,所以我们需要持续不断增加系统容量。我们在系统容量上线和确定它们能被很好使用之间保持了一定距离。只有在这些都完成之后,我们才能确定人们已经理解如何有效地使用我们的服务。同时,我们还在持续不断的学习和改进。

InfoQ:你们是如何提供这种大规模的消息处理平台并与其它竞争对手一较高下呢?

Dan: 当前云上消息系统的竞争格局非常有趣,这里面有一些知名企业,如 Amazon,谷歌也刚刚完成发布 / 订阅系统的 beta 版本测试。另外还有一些不是那么出名的公司正在做一些创新性的事情,这些事情和大公司做的事情完全不同。在大公司中,我们在消息服务上实际走了一个完全不同的方向,因为机遇或者设计原因,我们的系统可以很好地应对不同的业务。我们可以自信地说我们有着市场上最富特性的 PaaS 消息系统,即我们的 Service Bus。任何有传统企业消息系统背景的人在使用 Service Bus 时都将会感受到轻松自如。

InfoQ:在哪些行业的解决方案中可以应用Azure Service Bus消息系统呢?

Dan: Service Bus 消息系统可以应用在众多行业的商业解决方案中,包括零售、航空、汽车、交通管理、制造、银行、保险和能源。在微软内部,那些需求量最高的业务也都在使用 Service Bus,比如 Office365、Dynamics CRM 和那些引起轰动的游戏,如 Halo。

InfoQ:那么这个系统接下来还会有哪些令人期待并能使用户受益的能力呢?

Dan: 我们刚刚发布了 Azure Service Bus Premium Messaging 的公开预览版本。这个服务提供了所有 Service Bus 消息系统的特性,它提供了 Queues(队列服务)和 Topics(主题服务),并结合资源隔离来保证更加一致和可重复的性能。实际上,这意味着你可以通过所有性能的提升和对 IaaS 的控制来得到 Paas 的所有益处。它还可以使我们相比在共享环境下面提供更高规模的消息处理能力。我们会在内部持续地改进我们的服务并定期增加新的特性。我们的目标是确保我们的服务可以解决多样化用户基础的需求。

查看英文原文:Microsoft Azure Event Hubs Surpasses 1 Trillion Transactions in a Single Month

DevOps语言 & 开发架构