Mule ESB介绍及使用
1、Mule环境搭建
首先,下载安装包mule standalone download:https://repository.mulesoft.org/nexus/content/repositories/releases/org/mule/distributions/mule-standalone/
其次,解压到指定路径:D:\mule
接着配置环境变量:
在系统变量中新建MULE_HOME变量,值为安装路径D:\mule
在系统变量Path中添加mule路径:%MULE_HOME%\bin
验证是否配置成功:打开cmd 输入mule
参考网站:https://blog.csdn.net/weixin_36833780/article/details/88777377
MuleESB实例
- 下载AnypointStudio开发工具
https://www.mulesoft.com/platform/studio
此工具和eclipse比较像,就是对eclipse又进行了一次封装。
- Mule中的思想:
2.1 Flow:
流,也就是消息流是由接收消息,处理消息,为消息选择路径等一系列组件组成的。它是mule中的核心思想,十分重要。
流中可以依据功能划分为三大类:
Message processor(消息处理器):对消息进行加工处理,如filter,transformer,router等。
Message source(消息源):flow开始的地方,接收消息进入流中,触发处理器,如:Inbound/Outbound Endpoints。
Component(组件):主要实现一些特殊的功能,mule studio中提供的完成不了的。
Mule Message:
消息,是通过整个应用程序可能流经很多flow。它有两个重要的组成部分:
2.2 Message header:
包含该消息的基本的元数据。元数据是由属性(properties)和变量(variables)组成,元数据可以为我们提供有用的信息,譬如告诉我们这个消息去向哪里。元数据都有一个特定的范围来规定它的生命周期。
2.3 Endpoints(端点):
用来接收和发送数据,负责连接外部资源并发送数据。分为Inbound endpoints输入端点,Outbound endpoints输出端点。端点需要关联一个connector连接器完成输入输出。如果没有配置连接器系统会默认配置一个。
2.4 Scopes(范围):
可以理解为用这里的元素可以将某一些元素规划成一个整体,一个系统分成各个组成部分。这里有Async(异步),flow(流),foreach(循环),sub-flow(子流)等。
2.5 Components(组件):
用来处理一些特殊的业务逻辑的元素,当你想将传来的消息message,进行特定的处理,筛选,都可以使用这里的组件。Echo就是在这里分类里。Expression表达式,是一个很有用的元素。这里支持很多语言,script,python,ruby,groovy等等。
2.6 MEL语法:
这是一个非常灵活的工具,你可以使用MEL完成各样的表达式,譬如:常量,简单的运算,操作复杂的数据结构或者调用对象的方法;你还可以使用它运算regex和xpath函数。
2.7 Transformers(转换器):
在消息传输过程中,各元素可能接受数据的格式不同,我们需要将数据转换到元素希望接受的格式,这个时候我们就要用上转换器了。Mule中提供了很多样式的已经封装好的转换器供我们使用,如果没有合适的我们也可以自己定义转换器。
2.8 Filtes(过滤器):
顾名思义,就是过滤掉不需要的信息,保留需要的信息。Mule同样为我们提供了多样已经封装好的过滤器。有异常过滤器,表达式过滤器,信息属性过滤器,负载过滤器,引用全局过滤器。
2.9 Flow control(路径控制):
用来控制信息流的流向,这里有Splitter将信息根据条件拆分,并发送给相应的后续处理,All,Choice是将信息全部发送或者根据条件有选择的发送出去,还提供了很多路径控制方案。
具体详细介绍见:https://blog.csdn.net/sky302761277/article/details/51062264
3、简单应用
打开AnypointStudio开发工具,右键new→Mue Project,如下图:
工程结构图如下:
打开工程下firstproject.xml,在右侧Mule Palette 找到flow ,拖动到xml当中,操作如下图:
紧着着在右侧Mule Palette 搜索HTTP,拖动到刚才创建的flow中,操作如下图:
做如下配置:
在右侧Mule Palette 搜索Set Payload,拖动到刚才创建的flow中,操作如下图:
到此一个简单的应用程序已经创建好,接下来测试一下;
4、测试
在工程右击,选择Run as → Mule Application ,控制台就可以看到程序已经启动了,
启动完后 在页面输入测试地址:localhost:8082/ ,输出结果如下图
5、工程打包
查看网上一些教程说,这里导出的是zip格式,可我导出的是jar格式的。
把包复制到Mule的apps下:
Windows系统下启动方式:进入bin文件夹下,双击mule.bat
这时apps的jiar包会自动解压成文件
输入测试地址:localhost:8082/测试结果和上边是一样的。
Mule ESB介绍及使用相关推荐
- Mule ESB 介绍
1. 简介 Mule ESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换.Mule ESB支持集成现有系统而无论其底层采用何种技术,如J ...
- Mule ESB基本介绍
Mule ESB基本介绍 Mule ESB是世界上使用最广泛的开源企业服务总线(ESB)产品,已拥有超过数百万的下载量,以及来自世界各地数十万个开发人员,很多世界五百强企业选择Mule ESB作为企业 ...
- 关于MULE ESB相关的介绍
1. 简介 Mule ESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换.Mule ESB支持集成现有系统而无论其底层采用何种技术,如J ...
- Mule ESB 3.3与CloudHub
MuleSoft最近发布了企业服务总线(ESB)产品Mule ESB 3.3.在新版本中,除了应用程序集成之外,Mule ESB还拥有了数据集成功能:从而为开发者提供了一个面向本地或云端应用的集成解决 ...
- EnjoyingSoft之Mule ESB开发教程第六篇:Data Transform - 数据转换
目录 1. 数据转换概念 2. 数据智能感知 - DataSense 3. 简单数据转换组件 3.1 Object to JSON 3.2 JSON to XML 3.3 JSON to Object ...
- 使用Mule ESB与Groovy编排RESTful服务【转】很适合我们当前的架构
http://www.infoq.com/cn/articles/restful-services-mule 在过去几年中,REST风格的软件架构获得了越来越多的认可,这主要是因为它减少了系统对动件的 ...
- EnjoyingSoft之Mule ESB开发教程第二篇:Mule ESB基本概念
目录 1. 使用Anypoint Studio开发 2. Mule ESB Application Structure - Mule ESB应用程序结构 3. Mule ESB Application ...
- Mule ESB开发与学习
今天依旧是公司让调研,嗯嗯,学无止境 还是上次的问题,由于公司用了IBM的IIB,价格比较昂贵,所以调研一个开源的ESB用于小项目来使用,既然是小项目,估计也就用不到高可用这种集群模式了,所以老板让我 ...
- MULE ESB中custom,flows,connectors等的使用方法
1. how to work 当你去检查一个消息在mule esb当中 是如何流动的时候,你回发现整个架构中存在着三个层面:应用层,整合层,以及传输层.. 同样,在mule 开发中也有三种不同类型任务 ...
最新文章
- System V IPC之共享内存
- 4. Spring 如何通过 XML 文件配置Bean,以及如何获取Bean
- php.ini开启命名空间,Zend Framework教程之模型Model基本规则和使用方法
- cnn加工是什么意思_天秤座R-CNN:全面平衡的目标检测器
- OnTouchListener与OnClickListener冲突问题解决思路
- LNMP架构数据迁移到NFS存储
- 007 JVM堆内存划分
- poj1753 解题思路
- 惊叹!前NASA员工绘大型精美地面立体画(高清组图)
- visualDL(一)scalar标量图
- (二)u-boot2013.01.01 for TQ210:《Makefile分析》
- 配置JDK / JAVA
- 计时:赚一百块钱需要多长时间?
- Vue3 _ 11. Vue 生命周期 生命周期狗子
- 多机局域网办公神器 rustdesk 使用强推!!!
- 据挖掘中所需的概率论与数理统计知识
- 前后端分离的Java微信小程序B2C商城 H5+APP源码
- 程序员练级攻略(2018) --左耳朵耗子
- WebOffice常用API接口使用说明
- 酒店IPTV系统方案可选的有哪些?