`
alloyer
  • 浏览: 33459 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Mule 2.x Getting Started Guide第二部分Mule使用之配置Mule

    博客分类:
  • ESB
阅读更多

配置Mule

配置概述

1. 配置文件

 

默认的,并且最常的Mule配置方式是通过XML文件。

使用命令行启动Mule

在命令行启动时配置文件由参数-config指定。

编程的方式启动Mule

编程启动Mule时,配置文件作为ConfigurationBuilder的参数提供。

 

2. Configuration Builders

3. 指定使用哪一个Configuration Builder

XML配置

正如上一节配置概述中介绍的,最常用的Mule配置方式是通过Spring XML配置文件完成,这些配置文件是要使用默认的Mule名字空间。

XML 语法

配置文件基于XML语法(schema),在文件的最初指定。

必须要指定所有必须的语法文件,在创建配置文件时,这可能会比较耗时,但是导入语法提供了多种省时的好处:

在你使用的IDE中支持自动完成和详细的上下文帮助;

设计阶段的配置检查

Typed properties

 

名字空间

每一个Mule模块或者传输组件有它自己的XML语法。当你导入一个语法文件时,它有它自己的名字空间。例如,下面的配置中就将mule-jms.xsd绑定到了jms名字空间。因此,所有以<jms: 起始的xml元素都要遵循mule-jms.xsd语法。

 

默认名字空间

通常下,会将Mule core语法设置为默认的名字空间。也就是说所有没有前缀的xml元素都遵循Mule core语法(mule.xsd),设置默认名字空间语法的方法是,将Mule语法的URL指定给xmlns,去掉前面例子中的冒号和前缀,也就是使用xmlns替换掉xmlns:jms

 

Spring

尽管你的配置文件中出现了Mule相关的东西,但他们的确仅仅是附带了Mule相关扩展的Spring配置文件。这种方法可以让你在Mule配置中使用所有Spring提供的东西,比如beans,factory beans,resources loaders,EJBs,JNDI,AOP,甚至集成其他像Hivemind,jBPM,Gigaspaces,JBoss Rules等等此类软件。

使用标准的Spring元素,需要导入Spring名字空间:

 

属性占位符

你可以使用ant风格的属性占位符,例如:

 

正如这一节中描述的,这些占位符的值可以有很多种方法赋予

全局变量

你可以使用<global-property>元素来从Mule配置的内部设置一个占位符的值,比如在另一个Mule配置文件中:

 

属性文件

可以从文件中加载属性,你可以使用标准的Spring元素完成:<context:property-placeholder>

 

这里的smtp.properties文件的内容如下:

 

使用逗号来分隔需要加载的多个属性文件:

 

系统属性

占位符的值可以来自JDK系统,如果你从命令行启动Mule,你可以以如下方式指定这些属性:

 

或者在conf/wrapper.conf文件中编辑系统属性。

如果你使用编程的方式启动Mule,你可以用如下的方式指定属性:

 

环境变量

对于访问环境变量,没有标准的方式。这个里你可能会找到有用的信息。

配置一个Mule实例

基本配置

Mule配置文件可以表示成一个元素的描述树,不管什么形式的配置,最上层总包括以下的基本元素。

连接器(connectors):所有的传输组件都没有默认的配置;

端点(endpoints);提倡对端点进行全局定义,这样可以清楚地描述你的集成通道在什么位置;

转换器(transformers):可能需要全局定义,然后在你的服务中进行引用;

过滤器(Filters):同转换器。

模型(Models);一个或多个模型,从逻辑上组成了你的服务。

 

 

 

 

高级配置

另外,你可能还需要某些高级的配置:

代理(Agents):代理通常用于提供一些横向的服务,比如日志和管理;

通知(Notifications):在有生命周期的事件上,通知某些事件;

安全管理(Security Manager);

传输组件管理(Transaction Manager) ;

全局配置选项(Global Configuration Options):不同种类的全局设置;

全局属性(Global Properties):占位符的值。

 

配置选项

Mule上下文和Mule配置

所有的Mule配置都可以被一个对象:org.mule.api.config.MuleConfiguration访问。MuleConfiguration中的配置属性在Mule上下文(MuleContext)被创建时设置。在Mule启动后,这一对象是不可改变的,但它可以用如下方式进行访问:

 

配置变量

Mule配置变量可以用<configuration>标签进行配置。例如:

 

所有可用的变量如下表所示:

变量

类型

默认值

描述

defaultSynchronousEndpoint

属性

False

如果是true,对端点的连接就会持续等到响应。

defaultRemoteSync

属性

False

如果是true,对端点的连接就会持续等到远程服务的响应。

defaultSynchronousEventTimeout

属性

3000

等待一个同步响应的默认时间(ms)

defaultTransactionTimeout

属性

5000

事务默认的超时时间,没有指定时的默认值

Default-threading-profile

元素

默认的处理描述。在没有更详细的配置情况下,组件和端点用它来进行转发和接收。它可以被以下的三个覆盖。

Default-dispatcher-threading-

Profile

元素

默认的发送处理描述。

Default-receiver-threading-

Profile

元素

默认的接收处理描述。

Default-component-threading-

Profile

元素

默认的组件处理描述。

 

Q&A

怎样配置sercerId?

在2.0中,一些系统属性在启动后是不可改变的,比如serverId。serverId不再被配置在xml配置文件中,你需要用启动参数-DMule.serverId=YOUR_MULE_SERVER_ID指定系统属性或者编程的方式下调用 org.mule.config.DefaultMuleConfiguratioin.setId()。

 

我如何为管理代理设置serverUrl?

在1.x中,在<mule-enviroment-properties>中指定一个serverUrl属性来启动管理代理。在2.x中,可以使用<remote-dispatcher-agent>来替代。详细参照org.mule.module.client.

Remoting.RemoteDispatcherAgent

例如:

 

默认的队列描述,处理描述以及池化描述在哪里?

队列描述和处理描述配置在模型中,池化描述配置在池组件中。

配置端点

内容略

使用转换器

内容略

<!--EndFragment-->
分享到:
评论
2 楼 alloyer 2009-06-04  
portrait 写道

浅显易懂 正在找这样的资料呢 谢谢

仅仅是把User Guide里面的部分内容列举了一下。
Mule User Guide的翻译工作正在启动,你可以关注一下。
http://www.iteye.com/topic/391480
1 楼 portrait 2009-04-22  
浅显易懂 正在找这样的资料呢 谢谢

相关推荐

    Mule 2.x Getting Started Guider中文

    ### Mule 2.x Getting Started Guide 知识点解析 #### 一、Mule是什么? Mule 是一款基于 Java 的轻量级消息框架,旨在帮助开发者快速、便捷地连接各种应用程序,实现它们之间的数据交换。它支持多种技术栈,如 ...

    mule2.0 getting-started

    ### Mule 2.0 Getting Started Guide:ESB与J2EE环境下的集成服务 #### 概述 Mule 2.0是一个重要的版本更新,它不仅为开发人员提供了更加强大、灵活的服务总线(ESB)配置能力,还通过引入Spring框架进一步提升了...

    Mule_ESB_3_User_Guide.pdf

    - **Getting Started with Cloud Connect**: 介绍了如何开始使用Mule Cloud Connect来集成云端服务。 - **How to Build a Cloud Connector**: 提供创建自定义云连接器的指南,包括如何使用注解、如何在Eclipse或...

    hhhhh安卓开发教程大全

    hhhhh安卓开发教程大全

    avem-labs_Avem_1740990015.zip

    avem-labs_Avem_1740990015.zip

    25883-mofangmall.com 微信群管理机器人系统网站.zip

    微信群机器人管理系统源码 微信群机器人管理系统源码 支持同登陆多个微信 源码类型: C/S 开发环境: VS2010 SQL2008R2 菜单功能 1、支持同时登录多个微信 2、支持机器人聊天(笑话,成语接龙、故事会、智力等等) 3、支持签到 4、可自定义回复 5、可自定义红包语 6、支持定期发送公告(如群规,广告)等 1、WeChatRobots后台配置web版 2、数据库在WeiChartGroup.Net/app_data中,附加即可

    https://upload.csdn.net/creation/uploadResources?spm=1003.2018.3001.4314

    https://upload.csdn.net/creation/uploadResources?spm=1003.2018.3001.4314

    名字微控制器_STM32_课程_DeepBlue_1740989720.zip

    名字微控制器_STM32_课程_DeepBlue_1740989720.zip

    S7-200Smart恒压供水程序示例与485通讯实践:操作指南与案例解析,S7-200 Smart可编程控制器恒压供水程序设计与实现,附带485通讯范例,S7-200Smart 恒压供水程序样例+4

    S7-200Smart恒压供水程序示例与485通讯实践:操作指南与案例解析,S7-200 Smart可编程控制器恒压供水程序设计与实现,附带485通讯范例,S7-200Smart 恒压供水程序样例+485通讯样例 ,S7-200Smart; 恒压供水程序样例; 485通讯样例,S7-200Smart程序样例:恒压供水及485通讯应用示例

    Java读写Mifare M1卡IC卡源码

    Java使用JNA、JNI两种不同方式调用DLL、SO动态库方式读写M1卡源码,支持读写M1卡扇区数据、修改IC卡扇区密钥、改写UID卡卡号等功能,支持Windows系统,同时支持龙芯Mips、LoongArch、海思麒麟鲲鹏飞腾Arm、海光兆芯x86_Amd64等架构平台的国产统信、麒麟等Linux系统,内有jna-4.5.0.jar包,vx13822155058 qq954486673

    UDP协议接收和发送数据示例JAVA

    UDP协议接收和发送数据示例JAVA

    VU-DBS项目:深脑刺激器的全程辅助

    本文介绍了范德堡大学深脑刺激器(DBS)项目,该项目旨在开发和临床评估一个系统,以辅助从规划到编程的整个过程。DBS是一种高频刺激治疗,用于治疗运动障碍,如帕金森病。由于目标区域在现有成像技术中可见性差,因此DBS电极的植入和编程过程复杂且耗时。项目涉及使用计算机辅助手术技术,以及一个定制的微定位平台(StarFix),该平台允许在术前进行图像采集和目标规划,提高了手术的精确性和效率。此外,文章还讨论了系统架构和各个模块的功能,以及如何通过中央数据库和网络接口实现信息共享。

    图像识别项目源码资源(Python和C++)

    图像识别”项目源码资源(Python和C++)

    虚拟同步电机与并电网模型的Simulink仿真参数配置与直接使用指南,虚拟同步电机与并电网模型的Simulink仿真:参数齐全,直接使用,同步电机simulink仿真 并电网模型仿真 参数设置好了

    虚拟同步电机与并电网模型的Simulink仿真参数配置与直接使用指南,虚拟同步电机与并电网模型的Simulink仿真:参数齐全,直接使用,同步电机simulink仿真 并电网模型仿真 参数设置好了,可直接使用 ,虚拟同步电机; simulink仿真; 并电网模型仿真; 参数设置; 使用,虚拟同步电机Simulink仿真与并电网模型参数化应用

    三菱FX3U与力士乐VFC-x610变频器通讯案例详解:PLC控制下的变频器操作与设置程序,含接线方式及昆仑通态触摸屏操作指南,三菱FX3U与力士乐VFC-x610变频器通讯案例详解:接线、设置与程序

    三菱FX3U与力士乐VFC-x610变频器通讯案例详解:PLC控制下的变频器操作与设置程序,含接线方式及昆仑通态触摸屏操作指南,三菱FX3U与力士乐VFC-x610变频器通讯案例详解:接线、设置与程序注解,实现频率设定、启停控制与实时数据读取功能。,三菱FX3U与力士乐VFC-x610变频器通讯程序三菱FX3U与力士乐VFC-x610变频器通讯案例程序,有注释。 并附送程序,有接线方式,设置。 器件:三菱FX3U的PLC,力士乐VFCx610变频器,昆仑通态,威纶通触摸屏。 功能:实现频率设定,启停控制,实际频率读取等。 ,三菱FX3U;力士乐VFC-x610变频器;通讯程序;案例程序;注释;接线方式;设置;频率设定;启停控制;实际频率读取;昆仑通态;威纶通触摸屏。,三菱FX3U与力士乐VFC-x610变频器通讯程序及案例:频率控制与读取实践

    xmselect测试用例~~~~~~~~~~~~~~

    xmselect测试用例~~~~~~~~~~~~~~

    Unity-游戏开发-模型资源-科幻武器

    总共包含 32 款 AAA 级科幻武器。四种武器类型,每种有 8 种不同的纹理变化! 所有内容均采用 PBR 材质,可直接用于开发游戏!

    python词云生成器,将txt文本自动分割生成词云图

    python词云生成器,将txt文本自动分割生成词云图

    基于物联网智能化平台的智慧园区解决方案PPT(28页).pptx

    智慧园区,作为现代城市发展的新形态,旨在通过高度集成的信息化系统,实现园区的智能化管理与服务。该方案提出,利用智能手环、定制APP、园区管理系统及物联网技术,将园区的各类设施与设备紧密相连,形成一个高效、便捷、安全的智能网络。从智慧社区到智慧酒店,从智慧景区到智慧康养,再到智慧生态,五大应用板块覆盖了园区的每一个角落,为居民、游客及工作人员提供了全方位、个性化的服务体验。例如,智能手环不仅能实现定位、支付、求助等功能,还能监测用户健康状况,让科技真正服务于生活。而智慧景区的建设,更是通过大数据分析、智能票务、电子围栏等先进技术,提升了游客的游玩体验,确保了景区的安全有序。 尤为值得一提的是,方案中的智慧康养服务,展现了科技对人文关怀的深刻体现。通过智慧手环与传感器,自动感知老人身体状态,及时通知家属或医疗机构,有效解决了“空巢老人”的照护难题。同时,智慧生态管理系统的应用,实现了对大气、水、植被等环境要素的实时监测与智能调控,为园区的绿色发展提供了有力保障。此外,方案还提出了建立全域旅游营销平台,整合区域旅游资源,推动旅游业与其他产业的深度融合,为区域经济的转型升级注入了新的活力。 总而言之,这份智慧园区建设方案以其前瞻性的理念、创新性的技术和人性化的服务设计,为我们展示了一个充满智慧与活力的未来园区图景。它不仅提升了园区的运营效率和服务质量,更让科技真正融入了人们的生活,带来了前所未有的便捷与舒适。对于正在规划或实施智慧园区建设的决策者而言,这份方案无疑提供了一份宝贵的参考与启示,激发了他们对于未来智慧生活的无限遐想与憧憬。

    使用 SignalR 在 .NET Core 8 最小 API 中构建实时通知

    使用 SignalR 在 .NET Core 8 最小 API 中构建实时通知,构建实时应用程序已成为现代 Web 开发中必不可少的部分,尤其是对于通知、聊天系统和实时更新等功能。SignalR 是 ASP.NET 的一个强大库,可实现服务器端代码和客户端 Web 应用程序之间的无缝实时通信。 参考文章:https://blog.csdn.net/hefeng_aspnet/article/details/145990801

Global site tag (gtag.js) - Google Analytics