文章: Mule ESB 3.3与CloudHub
MuleSoft最近发布了企业服务总线(ESB)产品Mule ESB 3.3。在新版本中,除了应用程序集成之外,Mule ESB还拥有了数据集成功能;从而为开发者提供了一个面向本地或云端应用的集成解决方案。
相关厂商内容
分享云计算在传统IDC、移动互联网、SaaS应用、PaaS平台等领域应用,阿里云开发者大会,免费报名中!
参与讨论云存储的易用性、高可扩展、安全性,尽在阿里云开发者大会。
QCon杭州2012大会“社区之夜”开放报名中(10月26日 周五)
相关赞助商
阿里云开发者大会,2012年11月8日~9日,免费报名中, 了解详情!
Mule ESB 3.3提供了集成本地应用、SaaS和定制软件的套件;这些功能都可以在新的Mule Studio中找到。Mule ESB 3.3有两个分支:企业版和开源社区版。Mule ESB 3.3企业版包含了一系列相关组件,比如DataMapper, CloudHub和Cloud Connectors的Mule Studio。
Muel ESB 3.3的特性还包括:
- 内存内数据表(data-grid)
- Mule表达式语言(Mule Expression Language或MEL),这种语言可用于编写业务逻辑
- Mule企业版管理控制台支持外部数据库(PostgreSQL和Oracle)
- 完全支持WS-Security,包括Web Service安全协议SAML2
- 支持Java 7
InfoQ访问了MuleSoft的CTO兼创始人Ross Mason和Mule的首席架构师Daniel Feist,向他们了解了Mule ESB 3.3的新特性和产品的路线图。
InfoQ:Mule ESB 3.3的目标是什么?
Ross Mason:在该版本中我们有3个目标:
- 我们的总体目标是简化集成工作。在这个版本中,我们的重点是向开发者提供一种完整的集成解决方案,无论是面向本地应用还是云端应用。我们在一年半之前就发布了MuleSoft的云端产品CloudHub。但是,这次新版本的发布是我们第一次完全整合了Mule Studio、Mule ESB、 Cloud Hub、Cloud Connectors和Mule Devkit,并且向开发者和用户提供更好的用户体验。
- 我们完善了开源版Mule的运行时(run-time),从而使它可以更好地处理XML;同时,我们也完善了Mule Studio,开发者可以使用它进行异常管理和自定义业务逻辑开发。
- 我们意识到企业中间件的整合趋势。因此,我们使Mule ESB 3.3同时拥有了应用程序集成和数据集成功能。
Mule ESB 3.3包括了以下组件:
- 包含了DataMapper的Mule Studio
- CloudHub
- Mule ESB Enterprise Manage Console
- Cloud Connectors
- Mule Devkit
InfoQ:能否介绍一下Mule ESB 3.3所提供的应用程序集成和数据集成功能?
Ross:Mule ESB 3.3提供了最好的应用程序和数据集成功能。Mule ESB 3.3在REST、 Web Service、消息、文件传输和数据库这些应用程序集成标准的基础上扩展出了100多种针对企业、SaaS、社交网络和移动应用的集成适配器。在Mule ESB 3.3中,这些特性也运用到了数据集成层面。Mule的高性能SEDA集成运行时环境可以提取每个应用程序的元数据并且进行图形化的数据转换。
InfoQ:社区版和企业版Mule ESB 3.3的区别是什么?
Ross:社区版包含了Mule ESB 3.3的主要核心功能以及免费的开发工具;而企业版则具有更高性能,高可靠性并且是可管理的。以下是一些企业版独有的功能:
- Mule管理控制台(包括了远程服务、部署管理、管理和监控、性能分析和调优等功能)
- 集群可以不依赖于应用服务器,仅依靠内存内数据表(data grid)就可以完成集群的配置
- 业务事件通知提供了分布式系统的业务事件追踪能力
- 流程分析器:一个可以显示Mule ESB所处理的数据的实时的图形化工具
- 图形化的Data Mapper
- 其他适配器,比如JDBC、WMQ、 FTP或者SAP Connector
- 自恢复的连接
- 应用程序仓库
InfoQ:能否详细解释一下Mule ESB 3.3对Java 7的支持?
Daniel: Mule ESB 3.3的运行时(run-time)在Java 7上进行了完整的测试。因而最终用户可以使用Java 7的新特性并且提高性能。Mule自身并没有使用Java 7的新特性。但是,只要有可能,我们就想尝试NIO.2文件传输通道和try-with-resource,也对Fork/Join并发框架很感兴趣。
InfoQ:另外一个新特性是Mule表达式语言(Mule Expression Language或MEL)。它是一种领域专用语言(DSL)吗?能否介绍一下它的特性?
Daniel:以Mule表达式语言(Mule Expression Language或MEL)和其他成熟的表达式语言为基础,我们构建了领域专用语言(DSL)的特性。这意味着在Mule ESB中,表达式不仅仅是一种易用的语言而且是一种非常有用的语言。我们以MVEL为基础,这是一种非常成熟而且易于扩展的表达式语言。Drools团队对MVEL赞赏有加。我们在MVEL基础上构建的领域专用语言(DSL)能够访问Mule ESB的所有运行时上下文,包括服务器、应用程序、消息负载和工作流参数;同时还能够解析内联的XPath表达式和正则表达式。为了确保开发效率,我们把这些特性设计得非常易于扩展:开发者可以非常方便地导入和重用函数。
InfoQ: Mule ESB 3.3还支持WS-Security和用于Web Service安全的SAML2协议。是否还有其他方面的安全特性?比如认证、授权、数据加密或者消息安全方面的。
Daniel:Mule ESB有一个内建的认证和授权功能;这个功能可以利用各种通用技术来完成工作,比如HTTP Basic/Digest、 NTLM、LDAP、OpenID、X.509 Certs、CAS 3.0、SAML 1/2和JAAS等。Mule ESB的云端适配器还支持OAuth 1.0和2.0。开发者还可以使用Spring Secruity来完成授权方面的功能。数据加密方面,Mule ESB支持JDK内建的数据加密功能或者使用其他的安全协议,比如SSL、 HTTPS或者TLS。
InfoQ:Mule ESB 3.3是否包含监控功能?
Daniel:
- 社区版本提供了基于JMX的统计和监控应用程序、结点、工作流的功能。
- 企业版的管理控制台是监控功能的核心;通过管理控制台,开发或者运维团队可以完成部署和监控Mule ESB的所有工作。管理控制台提供了应用程序管理,审查、性能诊断、流程分析、错误预警和报表等功能。
InfoQ:在iPaaS (Integration Platform as a Service)方面,创新的趋势是什么?
Ross:目前,越来越多的PaaS方案正在取代本地数据中心系统。未来云端的应用程序会更加依赖于云端平台和云端服务。随着开源API、SaaS应用和手持互联设备的快速增长,开发者所需的技能也有所变化。现在开发应用程序更像是把许多API整合在一起。未来运行应用程序的设备可能是电脑、可能是手持设备。未来应用程序可能需要使用各种各样的结构化的或非结构化的数据源。我们的产品正是帮助开发者应对各种各样不同的API、数据格式和用户需求。iPaaS恰恰就是为这些目的而生的。我们相信iPaaS会变得更加流行。
InfoQ:Mule ESB和CloudHub的未来路线图是什么?
Ross:
- Mule:继续关注API管理和仓储化的应用程序/数据集成。
- Mule Studio:元数据驱动建模和图形化IDE。
- Connectors:我们时刻都在开发出新的适配器。在短时间内,我们计划发布针对Google的 Calendar、Contacts、Spreadsheets和Tasks的适配器以及针对微软Dynamics和Sugar CRM适配器。
- CloudHub:我们在接下来几个月内发布一些新的管理和监控功能。其中之一就是业务事件通知功能:用户可以使用这个功能监控自定义的业务数据。另外一个就是消息回顾机制:用户可以使用这个功能管理同步。
InfoQ: 感谢Ross和Daniel宝贵的时间接受采访。
查看英文原文: Mule ESB 3.3 Release and CloudHub
感谢 马国耀对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至 [email protected]。也欢迎大家通过新浪微博( @InfoQ)或者腾讯微博( @InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。