免费下载!由 O’Reilly 出版的《NGINX 完全指南》中文版已正式上线 了解详情
写点什么

Mule 2.0 发布啦

  • 2008-04-28
  • 本文字数:1693 字

    阅读完需:约 6 分钟

Mule 是一个轻量级且高度可扩展的 ESB,最近它发布了 2.0 版。2.0 版的新特性包括:

  • XML Schema——通过使用基于 XML Schema 的配置,Mule 的配置比以往更简单。这为 IntelliJ 和 Eclipse 这样的 IDE 提供了配置自动补全特性,使得配置更加简单。
  • Spring 式的 Mule——Spring 是默认的配置机制,同时 Mule 也可以利用 Spring AOP、Spring 资源加载和 Spring 模块。
  • 架构上的改进——进行了很多架构上的改进,包括引入了 MuleContext 和 Registry;将 MuleDescriptor 改为独立的服务及组件模型;端点改进;以及对流和转换的改进。

InfoQ 采访了 MuleSource 的 CTO 及共同创始人 Ross Mason 以了解该新版本。

有了架构上的改进、新的 XML 配置及包的重新组织,Mule 2 与 Mule 相比有哪些不同?

主要的改变就是新的 XML 配置。所有的配置元素都是类型良好的(well-typed)且可描述的。在配置文件中不再有类名了(除了你自定义的扩展)。每个命名空间都向你的应用中引入一个模块或者 transport。命名空间使得用户可以为每个 transport 配置 transport 特定的端点,这很轻松地就让我们知道必须的配置以及可选的配置。通过使用基于 schema 的配置,大多数 Xml 编辑器都会提供代码补全及内联文档的功能。我们可以看到有很多架构上的改变:

  1. 没有 MuleManager 了。相反,我们将这个大对象分解为可管理的几部分,这样扩展就更容易了,同时对核心服务器端行为的回调也更容易。
  2. 从用户的角度来看,他们所处理的对象的定义更加准确了。我们已经仔细研究过 Mule 中的所有对象,并确定他们的定义和作用是定义良好的。
  3. MuleContext 提供了对 Mule 资源的运行时访问(每次一个实例)。
  4. Registry 可以管理运行时对象。你可以拥有多个 Registry,这使你能覆盖现存的 Mule 实例的配置。
  5. 我们已经将组件(定义业务逻辑的 POJO)服务(定义如何以服务的方式管理组件的配置)的概念进行了分解。这对于帮助用户理解组件和服务的关系是很重要的。
  6. 核心的架构尚未改变,这意味着 Mule 的老用户不必抱怨,他们仍旧可以沿用以往的工作方式。

对于现有的 Mule 用户来说有没有推荐的升级方式呢?

现在还只能以手工方式升级到 Mule2.0。配置的结构与 Mule1.0 非常类似,但是对于 Mule2.0 来说,配置量大大降低了。对于 Mule 的企业用户来说,当我们发布了 Mule2.0 企业版时,我们会发布一个升级工具。

这么多的特性,你认为用户对哪些最感兴趣呢?你认为什么特性是最值得你自豪的?

自从对 mule 做了这么多大的改进后,我最自豪的地方就是其核心架构。我们需要为 Mule 上的新项目创建一个良好的平台。不幸的是,大多数用户永远也不会直接看到这些变化 :)

  1. 我们新增了一个表达式计算框架,这意味着用户可以定义像 xpath、xquery、groovy 和 jxpath 这样的表达式并使用 Mule 特定的处理器,如 header、attachment 及 function 表达式在运行时获得消息中的信息。我们可以使用这些表达式快速转换当前的消息、构造新的消息以及进行基于内容的路由。这是相当强大的功能,因为这使得运行时的配置更加动态。为 mvel、ognl 或者 jruby 等增加新的表达式计算插件也是非常容易的。
  2. 我们对消息处理进行了修补,现在已经支持自动转换了,这意味着必要时会探测已有的转换器并应用他们。这样用户就可以使用 MuleMessage.getPayload(org.w3c.dom.Document.class)或者 MuleMessage.getPayload(org.xml.sax.InputSource.class)来请求不同的消息类型。同时用户依旧能像以前那样显式定义转化器。
  3. 消息处理更加高效。默认情况下使用流方式处理,因此没必要再去显式定义流的端点。
  4. 我们对特定 transport 端点配置做了巨大的改进,这将根除端点配置错误的情况发生。
  5. 就在 Mule 2.0 发布的同时,我们还发布了 Mule IDE 的里程碑。它基于 Eclipse 并且包含了对新的可视化拖拽编辑的预览。

你还想增加什么呢?

架构上的改变使得 Mule 能从 OSGi 容器上加载。Mule 2.0 还不支持 OSGi,但是在本月初旧金山举办的 MuleCon 大会上,我们在 Mule 上演示了一个服务热部署的 demo,大家都对这个 demo 表现出极高的热情。

Mule 2.0 已经发布了,请查看概览下载最新版以了解这些新特性是如何工作的。

查看英文原文: Mule 2.0 Released

2008-04-28 01:192637
用户头像

发布了 88 篇内容, 共 253.8 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

Dubbo框架学习笔记九

风翱

dubbo 12月日更

全链路在线生产数据库压测利器:Apache ShardingSphere 影子库特性升级

SphereEx

开源 技术分享 ShardingSphere SphereEx 影子库

如何使用pFuzz以多种方法验证Web应用程序防火墙的安全性

H

网络安全 防火墙 信息安全

什么是立体车库?立体车库企业如何管理业务流程?

优秀

低代码 业务流程管理 立体车库

为什么孩子会有拖延症?

Tiger

28天写作

叮咚买菜自建MongoDB上云实践

MongoDB中文社区

mongodb

当游戏爱上MongoDB–参会赢Kindle!

MongoDB中文社区

mongodb

作业三

施正威

公安大数据合成作战平台建设,合成作战指挥中心平台开发

电微13828808271

遇到或问过的一些Spring面试题(持续更新)

Lazy

Java spring

可视化开发主流开源流程引擎与设计器研究对比

全象云低代码

低代码 流程 低代码开发 低代码平台 可视化软件

面对复杂微服务系统观测时,如何化繁为简?

尔达Erda

云计算 程序员 云原生 程序员微服务

IAST 在去哪儿 Q-SDL 体系中的应用

火线安全

信息安全 DevSecOps IAST

教你用Camtasia简单几步制作精美片头

淋雨

Camtasia

【MongoDB学习笔记】-使用 MongoDB 进行 CRUD 操作(下)

恒生LIGHT云社区

数据库 mongodb

重启iptables为啥内核参数不对了?

BUG侦探

Linux iptables

黑客实验环境的搭建与使用

喀拉峻

黑客 网络安全 环境配置 网络攻防 环境搭建

深入解析Apache Pulsar系列: Broker消息确认的管理

博文视点Broadview

百度王海峰:深耕自然语言处理近30年,推进AI融合创新

百度大脑

人工智能

公安重点人员动态预警管控系统建设,警务情指一体可视化决策系统

电微13828808271

【等保小知识】等保一级二级三级哪个要求更高?

行云管家

网络安全 等保 等级保护 等保20

行云管家V6.5正式发布:喜大普奔,主机临时授权功能上线啦!

行云管家

云计算 云资源 云管理

Mule 2.0 发布啦_Java_Ian Roughley_InfoQ精选文章