1.2 mule工程
mule项目开始的动机是使集成应用开发人员生活变动更简单。
该项目的一个主要驱动力是建立一个轻量级、模块化的集成解决方案--从应用程序级的消息框架扩展为
企业范围的高分布式的企业服务总线。
mule 名字含义: 在工作中接触了几个定制的ESB系统后,我发现在真正考虑实现任何逻辑前,
都要做大量的基础性工作。我认为这些基础工作是“蠢驴的工作”--每一个项目都要做一遍。
相比驴子,我更喜欢骡子,我就是看着蠢驴不爽 ;-) 。骡子是通常也被称为”货物“的运输工具,
把从”货物“一个地方运送到另一个。我们专注于运送的”货物“ ,就是您的企业信息。“
—Ross Mason, cofounder of MuleSoft
mule的核心是一个事件驱动框架和统一消息表示的结合,可进行插拔式的扩展。
可扩展性可以支持更广泛的传输方式,也可添加额外的特性,如分布式事务,安全性和管理。
mule是对开发者友好的框架,为程序员提供了扩展途径来添加额外功能,如特定的消息处理或
定制的数据转换。这种理念使得mule迅速适应和支持了企业计算的新趋势,如NoSQL,
分布式存储网格,以及像AMQP和ZeroMQ的轻量级的消息传递协议。
这个对软件开发人员的定位,帮助mule集中在其核心目标,并小心避免ESB在集成方案中进入有关角色的哲学辩论。
虽然mule通常标榜为一个ESB,并可以以这样的方式使用,框架并不是刻板的对你的应用进行集成。
此外,mule是一个开源项目, 迫使它坚持其使命提供一个能落地的集成框架, 而不会偏离主题变得不实用 。
最后,mule允许贡献者提供补丁和改进发展骡子, 把它变成一个坚实可靠的平台。
mule3,在2010年发布,对mule2进行了显著的改进。最明显的区别是新的配置机制简化了Mule的配置。
特别是引入了 ”flow“ 的概念 ,相比Mule 2简化了基于服务的配置。 流允许的自由组合消息处理器,
极大的简化了XML配置,再也不用像在mule2中配置冗长的xml了。
Mule Studio,在2012年推出,进一步简化了应用程序的集成开发。Mule Studio是一个图形化的,基于Eclipse的开发环境。它的特点是可以拖放流的组件,完整的XML往返,并可以直接在IDE中运行mule应用
程序或者将它们部署到服务器或到云。
扩大和发展的骡子也得到了极大的简化。 Mule DevKit --将在第13章深入讲解,可以很容易地编写自定义
Mule 组件与mule系统进行完全集成。框架广泛 采用了注释,用于简化和测试组件。云连接器简化了与远程API和平台的集成。新部署模型简化了打包和部署mule应用。