Mule译为:骡子、顽固的人。Mule是一个以java为基础的企业服务总线(ESB),该集成平台允许开发者在遵循SOA服务导向式架构方法学下快速便捷的将不同应用程序连接在一起交换数据。可以忽略各个应用程序中使用的不同技术,使他们集成在一起。

Mule的主要功能如下:

l       服务的创建与管理(Service creation and hosting):用Mule ESB作为一个轻量级的服务容器来暴露和管理可重用的服务。

l       服务调解(Service mediation):隐藏服务消息的格式和协议,将业务逻辑从消息中独立出来,并可以实现本地独立的服务调用。

l       消息路由(Message routing):基于内容和规则的消息路由、消息过滤、消息合并和消息的重新排序。

l       数据转换(Data transformation):在不同的格式和传输协议中进行转换数据。

Mule通过Transports/Connectors与外围的异构系统连接,提供Routing(路由)、TransactionManagement(事务管理)、Transformation(转换)、Message Broker(消息代理)、TransportationManagement(传输管理)、Security(安全)等核心模块。Mule可以单独使用,也可以架设在常用的应用服务器上。

基本概念:

1.Model

Model表示托管各个服务的运行时环境。

2. Service

Service是用来处理服务请求的基本单位,它调用各个组件进行服务请求的处理。

3.Transport

Transport管理消息的接收和发送,数据转换的过程也是在Transport中通过调用Transformer完成的。

3.1 Connector

Connector用于管控特定协议的使用,如HTTP Connector、JMS Connector等。

3.2 End-Point

Endpoint用于表示一种协议的特定使用方式,如listening/polling、从中读取、向指定地址写入等,定义了发送和接收消息的通道。Endpoint控制的是底层的实体在Connector中如何被使用。

Endpoint定义于Inbound和Outbound Router中。

4.Transformer

Transformer用于转换消息的内容。

5.Router

Router使用Filter基于消息中的属性信息进行消息的分发。

Router在Service中的位置决定了Router的性质(inbound、outbound和response)和担任的角色(pass-through、aggregator等)。

6. Component

Component是Service的核心部件,是Service的业务逻辑的实现。

Component可以是Java Class(POJO、Spring Bean)、Web Service、Script等。

Component可定义自己的生命周期:initialise、start、stop、dispose,不过需要实现Mule的LifeCycle接口。Mule3.0版本开始提供@PostConstruct和@PreDestroy的注解,对应生命周期的initialise和dispose阶段,不需要实现Mule的LifeCycle接口了。

7.Flow(@since 3.0)

Flow是Mule 3.0新引入的,包含一个消息源(Message Source)和多个消息处理器组成的处理器链。

小结:

MuleESB的出现,提供了企业另一种解决问题的思路。由于网上资料不多,所以大部分都是参考的英文文档,下面会从最简单的HelloWorld开始,一步步学习MuleESB。

企业服务总线--MuleESB简介相关推荐

  1. 企业服务总线(ESB)技术与革新

    企业服务总线(ESB)技术与革新 (用异步消息传递和智能路由选择扩展Web服务) 作者:Nigel Thomas和Robrert Dalies 由于更大任务所带来的要求,消息传递技术现在正处于发展之中 ...

  2. 当企业服务总线遇到云服务

    转载本文需注明出处:微信公众号EAWorld,违者必究. 前言: 本文主要介绍企业服务总线的常见应用场景,与大家共同探讨在云环境.微服务中传统企业服务总线所面临的问题,结合普元企业服务总线产品向大家分 ...

  3. ERP_基于Oracle SOA的企业服务总线整合

    2015-01-01 Created By BaoXinjian 一.方案背景 随着企业信息化程度的不断提高,企业IT系统日趋庞大,跨系统流程以及各个系统之间.以及系统内部的接口需求和接口服务调用也不 ...

  4. 企业服务总线需求说明

     企业服务总线需求说明 Enterprzise Service Bus 1     ESB的主要作用 ESB主要解决多终端多系统的相互调用问题,减少系统间的耦合,添加可维护性. 2     ESB ...

  5. 好的微服务架构=企业服务总线(ESB)的灭亡?

    这些天,似乎每个人都在谈论微服务. 您可以在数百篇文章和博客文章中读到很多有关该主题的文章,但是我建议的出发点是Martin Fowler的这篇文章 , 该文章引发了有关这种新建筑概念的大量讨论. 本 ...

  6. [MQ]消息队列与企业服务总线的简单比较,MQESB

    前段时间因需要,回顾了下MQ.将部分整理内容分享备忘: 消息队列(MQ) 企业服务总线(ESB) 定义 MQ(Message Queue)消息队列. 把要传输的数据放在队列中,通过消息传递队列发送和接 ...

  7. ESB 企业服务总线基本内容概述

    ESB全称为Enterprise Service Bus,即企业服务总线. 它是传统中间件技术与XML.Web服务等技术结合的产物. ESB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素. ...

  8. 什么是ESB(企业服务总线)

    什么是ESB(企业服务总线) 有了它,才能释放SOA的最大价值.因此,ESB成为厂商在SOA(面向服务的架构)竞争中的焦点.作为近两年软件领域最热门的词汇之一,SOA(Service Oriented ...

  9. ESB(Enterprise Service Bus,即企业服务总线)

    1. ESB架构之企业实施案例 : http://www.infoq.com/cn/articles/esb-enterprises-case 2. ESB(Enterprise Service Bu ...

最新文章

  1. CSS浮动元素特点有什么
  2. 云原生应用程序的架构应该怎么设计?
  3. 算法提高课-搜索-DFS之搜索顺序-AcWing 1116. 马走日:dfs
  4. 那些年,我们追过的java8
  5. 故障恢复 stm32_硬件编程:77条STM32知识汇总
  6. 学习CSS(页面布局篇)
  7. unity底层运行机制_Unity跨平台的机制原理
  8. mysql c 调用存储过程返回值_Mysql:使用返回值调用存储过程
  9. 【输入一个年份,判断是否为闰年(leap year)】
  10. 怎么打开Windows Server 2008 图片预览的功能
  11. Flutter实战一Flutter聊天应用(十五)
  12. 去除 火狐浏览器自动给域名前加 www.
  13. java 三子棋_java三子棋,高手帮忙
  14. mysql完全卸载教程(图文详细)
  15. html页面获取map的值,vue获取map集合中的key、value值
  16. Android日常开发问题总结:这些问题火候不够,随时变成删库跑路!
  17. PAT A1065 A+B and C (64bit) ——斜风细雨不须归
  18. java邮件附件名称乱码_Java邮件开发(三):解决附件名为乱码及显示友好名称
  19. python tcl tk_如何解决Mac版关于python3.5.X的Tcl/Tk (8.5.9) 的警告?
  20. 计算机秋招必备!杭州互联网大厂企业整理清单!

热门文章

  1. 出现 java.lang.UnsupportedClassVersionError 错误的原因及解决方法
  2. Android----一个完整的小项目(医疗app)
  3. php中- gt 什么意思,php是什么意思啊_php代码中quot;-gt;quot;是什么意思
  4. android ext4 损坏,EXT4文件系统损坏导致的实例无法启动的排查与修复
  5. Ubuntu防火墙的开启、关闭、查看
  6. Request processin g failed; nested exception is feign.RetryableException: too many bytes written
  7. python 多进程 提高运行效率
  8. maya导入unity材质丢失
  9. CentOS8配置NTP服务器同步Windows和Linux主机
  10. 自底向上构造语法分析树Java_编译原理系列之五 自底向上优先分析(1)-简单优先分析法...