本周,微软发布了Service Bus for Windows的bata版,其功能是基于云的Windows Azure Service Bus消息引擎的子集。这是微软向使用自管理产品交付快速且成熟的云整合解决方案迈出的第一步。
Windows Azure Service Bus包含一组用于跨云整合应用系统的产品。Relay service是Windows Azure Service Bus的第一大组件,开发者可用它在企业本地的Windows Communication Foundation(WCF) 服务与Windows Azure云之间建立双向交互通道。然后,服务消费者就可向公开的服务地址发送请求消息,Windows Azure Service Bus则会将消息安全地转发给本地服务。用户通过访问控制服务(Access Control Service)进行认证,该服务支持与Google、Facebook、Yahoo和微软的身份联盟。去年,微软给Windows Azure Service Bus增加了更多功能,例如,通过Service Bus EAI组件(参考InfoQ以前的报道)与本地业务线系统进行集成;通过主题和队列提供的持久的消息传输支持。
Service Bus for Windows使得用户可在任何Windows 2008 R2及更高版本服务器上提供和操作服务总线主题(Service Bus Topics )和服务总线队列(Service Bus Queues )。整套解决方案可在单台Windows机器上运行,也可支持高可用的多节点部署模型。该软件除了需要Windows操作系统之外,还需要SQL Server 2008 R2(及更高版本)作为持久层,以及Windows PowerShell 提供的服务管理。IT服务公司Codit的首席架构师Sam Vanhoutte在一篇博文中阐述了一组场景,在这些场景中,使用自管理的环境比使用Microsoft的Windows Azure云更适合。
仅需持久消息传输的场景
如果仅仅需要在本地进行消息交换,你就可以使用Service Bus for Windows服务器很好地在应用及服务之间进行传输,并且保证消息传输的持久性和可靠性。
存储转发场景
通过Service Bus for Windows服务器,你可以在主题(Topic)上定义ForwardTo类型的订阅(subscription),只要消息匹配这些订阅规则,就会被自动转发到预先定义好的消息实体中。虽然ForwardTo不能将消息转发到远端的实体,但是有一个绕行方案可解决此问题,即定义一个订阅者,让它监听本地的ForwardTo实体,然后将其消息转发给公共实体。
分布式场景
多数企业是由多个不同的业务单元或子公司组成,这些单元和子公司需要互联互通。在许多企业里(往往在并购和收购之后),不同的子公司使用的技术不尽相同。所以,将Service Bus 用作消息交换网关是很好的选择,每个单元都可使用其自身标准(REST、SOAP、.NET、AMQP……)与此网关交互。
此前,Microsoft曾经试图通过在本地和云端产品间“AppFabric”建立完全对称的关系。但是,唯一在两个环境中通用的产品是内存缓存(in-memory cache)引擎,Windows Azure团队最近丢弃了AppFabric这一产品名称。Microsoft似乎选定了“Service Bus”这一名称,而且Windows Azure Service Bus里缺失的功能有可能会在本地软件中找到。目前,除了Microsoft Active Directory之外,该产品还缺乏任何访问控制服务组件和认证模块。同样地,处于beta版的Windows Azure Service Bus EAI组件,在本地版中尚无明确的时间表。Vanhoutte提到了在本地和云端保持软件功能的同步所面临的挑战。
当前最大的疑问是Microsoft如何保持服务器版本的对称。服务器产品的发布步调与基于云的服务差别迥异。许多服务都在不断增加新特性,一直以来这些更新都搬到了服务器安装版本之上。我非常好奇这些更新采用的是怎样的发布周期。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
云平台上创建一个服务总线命名空间
要在Windows Azure开始使用服务总线队列,您必须首先创建一个服务命名空间,那么如何实现此操作呢?
-
Azure新增集成服务总线
微软Azure云是一项相当巨大的技术承诺,但是和.NET开发团队比起来,还是存在未知性。最初,微软是轻装上阵的,它跳过了SQL支持。
-
CIO在部署SOA过程中的五大隐患
现在是SOA领域动荡变化的时期,其发展变幻莫测,而这仅仅只是开始。由于服务设计、服务总线、服务治理甚至服务本身都处于不断变化中,而且各大公司仍在重审这一舞台……
-
从五大问题解答SOA应用关键任务
从软件厂商到ISV,甚至是技术机构团体都开始对SOA最为基础的环节:服务展开了探讨。对服务总线的再定义,服务管理的调整,服务流程的规划,甚至是最根本的服务自身……