一步一步学Mule ESB——(第一篇:基础篇)

简介: mule 它是一个以Java为核心的轻量级的消息框架和整合平台,基于EIP(Enterprise Integeration Patterns,由Hohpe和Woolf编写的一本书)而实现的。Mule的核心组件是UMO(Universal Message Objects,从Mule2.0开始UMO这一概念已经被组件Componse所代替),UMO实现整合逻辑。

mule

它是一个以Java为核心的轻量级的消息框架和整合平台,基于EIP(Enterprise Integeration Patterns,由Hohpe和Woolf编写的一本书)而实现的。Mule的核心组件是UMO(Universal Message Objects,从Mule2.0开始UMO这一概念已经被组件Componse所代替),UMO实现整合逻辑。UMO可以是POJO,JavaBean 等等。它支持30多种传输协议(file,FTP,UDP,TCP,email,HTTP,SOAP,JMS等),并整合了许多流行的开源项目,比如 Spring,ActiveMQ,CXF,Axis,Drools等。虽然Mule没有基于JBI来构建其架构,但是它为JBI容器提供了JBI适配器, 应此可以很好地与JBI容器整合在一起。而 Mule更关注其灵活性,高效性以及易开发性。从2005年发表1.0版本以来,Mule吸引了越来越多的关注者,成为开源ESB中的一支独秀。目前许多 公司都使用了Mule,比如Walmart,HP,Sony,Deutsche Bank 以及 CitiBank等公司。Mule 3版本以后集成OSGi,支持热部署。

可见OSGI必将是将来的一大趋势,各大厂商,开源软件等都已经开始支持此规范。

下载和安装Mule ESB

我们到Mule的官方网站下载Mule ESB,网站是:

http://www.mulesoft.org/

Mule一共有两个版本,一个是社区版,一个是企业版,企业版是收费的,但是功能强大。

              图:Mule ESB社区版

              图:Mule ESB企业版

我们下载社区版。

然后解压、启动Mule Studio,选择工作空间:

                  图:Mule Studio启动并运行

基础示例

启动并且选择默认的工作空间后,就会出现如下界面:

              图:Mule Studio的欢迎界面

创建新工程:File > New > Mule Project

因为我们要做的示例是拼写检查,所以我们这里命名叫SpellChecker

          图:创建Mule工程

其它默认,下一步然后完成。

工程界面如下:

               图:Mule Studio工作界面

接下来我们为示例设置两个文件夹:

选择Studio Application Menu > File > Open File >

然后打开你的Mule Studio安装文件夹,Examples > Spell Checker

新增目录InXMLOutXML

      图:在目录中新加文件夹

下面看下典型的业务流程:

              图:业务流程图

web客户端发送Http请求然后到入口端点,经过Filter进行过滤错误的信息,然后转换成JMS的服务,经过Java的业务逻辑组件处理最后再转换成Http请求返回给客户端应用,就是这么样的一个流程。

下面我们就Mule Studio来画一下对应的应用,直接看完成后的效果:

        图:spell checker处理流程

双击第一个File,设置上边新建的输入文件夹:

        图:设置输入的文件夹

然后双击Http标签,设置如下:

              图:http设置

最后设置File的输出规则:

          图:File的输出规则及输出目录

保存文件,然后我们运行工程,工程上点右键,Run As > Mule Application

正常启动后应该能看到

            图:Mule启动运行spellchecker

            图:spellcheck文件的位置

将示例中spellcheck拷贝到InXML中,然后我们看Mule的控制台

              图:Mule控制台的信息

我们再看一下OutXML文件夹,多了一个生成后的文件

上面就是Mule的示例工程,看看Mule有多好用吧!

 

 

 

目录
相关文章
|
7月前
|
设计模式 负载均衡 网络协议
【分布式技术专题】「分布式技术架构」实践见真知,手把手教你如何实现一个属于自己的RPC框架(架构技术引导篇)
【分布式技术专题】「分布式技术架构」实践见真知,手把手教你如何实现一个属于自己的RPC框架(架构技术引导篇)
299 0
|
7月前
|
存储 监控 API
SOA简介
SOA简介
175 1
|
6月前
|
存储 运维 负载均衡
「微服务」这10道Consul面试题值得一看
Consul 是一个强大的分布式服务发现和配置管理工具,用于服务注册、健康检查、负载均衡、故障恢复等。它支持多数据中心和多种协议,提供服务发现、健康检查、KV 存储和事件通知功能。服务注册与健康检查由 Agent 实现,负载均衡通过 Service Mesh 实现。尽管 Consul 提供诸多优点,如多数据中心支持和高可用性,但其学习和部署成本较高,适合大型项目,对于小型或初学者可能过于复杂。在使用时需根据实际需求和资源考虑。
|
消息中间件 JSON Java
微服务技术系列教程(33) - SpringCloud-消息驱动简介&原理
微服务技术系列教程(33) - SpringCloud-消息驱动简介&原理
62 0
|
7月前
|
缓存 Shell API
作者推荐 | 一文深度解读 — 彻底认识与理解微服务技术之Rest与Restful架构精髓
作者推荐 | 一文深度解读 — 彻底认识与理解微服务技术之Rest与Restful架构精髓
432 0
|
7月前
|
存储 网络协议 Dubbo
Rpc编程系列文章第一篇:RPC概述和架构演变
Rpc编程系列文章第一篇:RPC概述和架构演变
|
7月前
|
存储 运维 负载均衡
「微服务」这10道Consul面试题值得一看
「微服务」这10道Consul面试题值得一看
169 0
|
消息中间件 Cloud Native Java
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
721 1
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
|
XML JSON 缓存
.NET 云原生架构师训练营(模块二 基础巩固 REST && RESTful)--学习笔记
- 什么是 REST,什么是 RESTful - RESTful API 设计 - RESTful 成熟度模型
304 0
.NET 云原生架构师训练营(模块二 基础巩固 REST && RESTful)--学习笔记