mule的使用介绍

 

本文简单的介绍下mule的使用

 

mule是一个服务器,不同于其他的应用服务器,它的功能是专做请求转发用的吧,类似与代理,个人感觉!

 

下载,mule是开源软件,可以到mule的官网上下载,mule还有一个带图形界面的版本,叫mule stdio,好像是商业版的

下载的是一个zip包,解压出来后,里面的文件夹有binexampleapps等,

bin里面有开启服务器的命令mule.bat

example里面放的是mule自带的实例,有hello等。

apps里面放的是自己要发布的项目,里面的项目如果没出错的话,可以在浏览器中请求到的。

 

自带实例运行:

打开mule-standalone-3.3.1\examples\hello,在hello中有一个mule-example-hello-3.3.1.zip压缩包,把这个压缩包复制到apps目录下,到bin目录下打开服务器,然后在浏览器中请求:http://localhost:8888/?name=Ross,就会返回结果,例子用法在hello文件下的readme.txt文件中有说明。其他例子类似。

 

一个mule项目中有一个配置文件mule-config.xml,可以打开目录mule-standalone-3.3.1\examples\hello\src\main\app下的配置文件,简单的解释下:配置文件中的主要元素介绍:

flow定义了一个请求流程,一个flow中有访问入口inbound-endpoint,然后下面有转换器transformer和组件component,他们都是一个类,可以自己编写,都是对消息进行处理的,最后还有一个出口outbound-endpoint,去访问其他服务上的资源。

这里的消息是指请求到来的时候,mule会把请求中的信息封装为一个消息message对象,里面包括请求头以及你的请求参数。如ip,端口,编码方式等。

 

关于处理类,有没有想过如果类中有多个方法,你只配置了类,又没指明方法,它怎么会知道调用哪个方法呢,不用担心,你的方法总有参数吧,你提供的消息是什么类型的,就会调用什么类型参数的方法,这里用到了反射机制,如果无匹配的,就会报错的。如果方法需要某个类型的参数,可以在组件类之前使用转换类对消息进行转换。

 

转换类:一般会继承一个抽象的转换类abstracttransformer类,需要实现一个方法,方法中有你对消息进行处理的逻辑,刚进来的消息类型是一个字符串。

 

Ps:总结一下mule的请求过程就是,来一个请求,然后再把请求转发到另一台服务器或直接返回,期间会对请求中的消息做一些处理,以及可以发送不同协议的请求,如httpwebservice等。

猜你喜欢

转载自luoriwubian.iteye.com/blog/2024634
今日推荐