ESB的开源框架Mule介绍
- 格式:ppt
- 大小:912.00 KB
- 文档页数:18
Mule ESBMule ESB简介什么是Mule ESB?Mule ESB是一种基于java的、轻量级的企业服务总线和集成平台,她允许开发者快速的、简单的连接应用,并能够实现数据的转换。
从2005年发表1.0版本以来,Mule吸引了越来越多的关注者,成为开源ESB中的一支独秀。
目前许多公司都使用了Mule,比如沃尔玛,惠普,索尼,Deutsche Bank 以及CitiBank 等公司。
Mule官方网站:/Mule ESB的主要功能如下:●服务的创建与管理(Service creation and hosting):用Mule ESB作为一个轻量级的服务容器来暴露和管理可重用的服务。
●服务调解(Service mediation):隐藏服务消息的格式和协议,将业务逻辑从消息中独立出来,并可以实现本地独立的服务调用。
●消息路由(Message routing):基于内容和规则的消息路由、消息过滤、消息合并和消息的重新排序。
●数据转换(Data transformation):在不同的格式和传输协议中进行转换数据。
Mule3Mule近期推出了Mule3,Mule3的新增特点-云连接(Cloud Connect)。
云连接提供了可以用简单安全的方式为企业提供基于云技术的数据和服务。
它的核心是IBeans,一个轻量级、可重用的接口,用于Web技术的连接扩展和数据服务。
Mule云包括以下内容1、Integration Beans (合成bean):他们是可重用的云接口,可以注入到组件中,可以接受外部的服务,比如说亚马逊、推特、Facebook等,并且是一种简单的接收服务、管理安全机制的方法。
请求验证、数据传输、错误挂起等也可以通过这种方法来实现。
2、Rest / JAX-RS:(REST协议:即REST(Representational State Transfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。
ESB原理及Mule ESB实践1ESB介绍(一)ESB是SOA架构中实现服务之间智能化集成和管理的中介。
(二)有标准的信息格式,在服务之间进行信息传递,因为集成对象统一到服务。
(三)支持同步请求—响应、异步请求—响应(事件驱动)(四)支持多种传输协议:Http 、JMS、MQ(五)支持多种集成方式JCA、WEB服务、MESSAGING、ADPTER(六)对服务调用进行管理、记录、监控(七)协议转换:SOAP/ HTTP/ MQ/ QMGR/ .NET/ WEBSphere Servers/ JMS client /C &C++client(八)如果采用开放标准实现ESB:WEB服务+ webservice协议。
2MULE ESB介绍2.1MULE ESB组成结构a)Model:服务运行时环境,包括:异常处理、生命周期管理、entry point resolversb)Service:处理服务请求的基本单位,它调用各个组件进行请求处理。
c)Transport:抽象概念的“通道”,包括:文件通道、stdio、邮件通道、WebService (CXF/AXIS)、Http通道、JMS通道、FTP通道、jdbc通道、EJB通道、XMPP通道、VM通道。
d)Connector:协议连接器。
Http Connector、JMS Connectore)END-Point: 路由出口、入口。
在Inbound或Outbound Router中定义listening/polling和出口入口地址。
f)Router:通过Filter拦截跟踪消息属性分发到各个END-Point。
g)Component:Service的处理的核心,component有自己的生命周期。
h)FLOW: flow的过程messageService—>message process1--->message process2…….一步一步学Mule ESB——(第一篇:基础篇)2012年10月22日9:55一步一步学Mule ESB——(第一篇:基础篇)mule它是一个以Java为核心的轻量级的消息框架和整合平台,基于EIP(Enterprise Integeration Patterns,由Hohpe和Woolf编写的一本书)而实现的。
什么是Mule关键字: mule入门Mule是一个轻量级的消息框架也是分布式的对象中介,允许你快速、简单的连接各个应用来交换数据。
以企业级服务总线这个企业集成模式开设计的Mule可以无缝的利用总多的技术像JMS、HTTP、Email、XML-RPC来处理应用之间的交互。
简单的说,Mule就是可以利用各种技术来对不同的应用之间进行连接,来达到应用之间交互的目的。
Mule是很容易扩展的,最初的时候,你可能只有几个应用通过Mule来进行连接,但是随着规模的不断变大,Mule管理的应用可以不断的增大。
Mule对于应用或者组件之间的交互的管理是透明的,不管是否在同一台机器上,不管通信的协议是否相同。
Mule是基于企业级服务总线(ESB)架构的思想。
Mule是厂商中立的,所以不同厂商的产品都可以连接到Mule系统,你也可以自己进行相应的扩展。
消息通讯从上图,你可以了解到应用直接需要对于数据进行交换处理,但是应用之间的数据格式肯定是不可能一致的,那么就需要一个通道来进行数据格式的转换,我们把应用内部的数据结构叫做Date,把在通道中传输的数据叫做Message。
那应用之间的数据格式的转换以及传输这部分的工作都由Mule来完成,而应用只需要关心对业务逻辑的处理,至于数据的转换和传输都由Mule在底层完成。
当然Mule所能处理的要比上图复杂的多了,包括多通道的传输以及消息的过滤等等,这些还是在看Mule的Examples的时候好好的挖掘吧。
逻辑数据流这幅图就不用详细解释了,按照标号走下流程,最根本的东西是,所有的服务都不处理数据的转换和传输的问题,这些都有Mule来解决。
当然Mule都是通过XML配置的方式,那么你就可以很方便的对已有的服务进行重组来满足新的业务上的需要。
Mule是一个企业服务总线(ESB)消息框架,而且Mule是一个轻量级且高度可扩展的ESB。
主要特性1.基于J2EE1.4的企业消息总线(ESB)和消息代理(broker).2.可插入的连接性:比如Jms,jdbc,tcp,udp,multicast,http,servlet,smt3.支持任何传输之上的异步,同步和请求响应事件处理机制.4.支持Axis或者Glue的Web Service.5.灵活的部署结构[Topologies]包括Client/Server, P2P, ESB 和Enterp6.与Spring 框架集成:可用作ESB 容器,也可以很容易的嵌入到Spring应7.使用基于SEDA处理模型的高度可伸缩的企业服务器.8.强大的基于EIP模式的事件路由机制等.9.支持声明性和编程性事务,包括XA 支持10.对事件的路由、传输和转换的断到端支持11.使用基于SEDA处理模型的高度可伸缩的企业服务器12.支持REST API 来提供技术独立和语言中立的基于web的对Mule 事件的13.动态、声明性的,基于内容和基于规则的路由选项14.非入侵式的方式。
任何对象都可以通过ESB 容器管理15.强大的应用集成框架16.完整的可扩展的开发模式更详细的介绍:/SteelHand/archive/2005/05/18/47 mule2.0发布的中文说明:/java/20080429/7664.htmlMule 2.x User Guide/display/MULE2USER/Home架构一些名词说明Transport Mule的传输层,由很多组件构成Connector连接器,负责发送和接Endpoints端点,发送和接收消息2.0版本以后端点的配Transformer转换器,负责接收和发Router路由器,在ConnectorFilter过滤器,对接收和发送UMO Components业务组件,这部分代码Inbound/Outbound消息入口、出口其他Mule作为Java ApplicationMule作为Web ApplicationMule作为ESB(Enterprise Service Network )Mule作为ESN(Enterprise Service Network )Mule Messaging Styles Mule的消息机制Asynchronous异步Request Response请求响应Synchronous同步Remote Synchronous远程同步Async Request Responsemule-2.0.1中hello例子的配置文件<?xml version="1.0" encoding="UTF-8"?><mule xmlns="/schema/mule/core/2.0"xmlns:xsi="/2001/XMLSchema-instance"xmlns:spring="/schema/beans"xmlns:stdio="/schema/mule/stdio/2.0"xmlns:vm="/schema/mule/vm/2.0"xsi:schemaLocation="/schema/beans /s /schema/mule/core/2.0 /sch /schema/mule/stdio/2.0 /sc /schema/mule/vm/2.0 /schem <description>The hello sample application has two components -1. The Greeter component that adds a greeting to the event it receives2. The ChitChater component that adds some additional conversation to the event it rece An event is triggered by input through the system console and the outbound event isaslo written out through the system console.This configuration also demonstrates user and system error handling. User error handlin an error message to the end user. System error handling logs errors.</description><!--The system stream connector is used to send and receive information via theSystem.in and System.out. Note this connector is only really useful for testingpurposes.promptMessage - is what is written to the console<outbound-pass-through-router><stdio:outbound-endpoint system="ERR"/> </outbound-pass-through-router></outbound></service></model></mule>可扩展的ESB。
MuleSoft与其产品Mule ESB产品说明书简介Mule ESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换。
Mule ESB支持集成现有系统而无论其底层采用何种技术,如JMS、Web Services、JDBC、HTTP以及其他技术。
整体结构从上图可见,Mule通过Transports/Connectors与外围的异构系统连接,提供Routing (路由)、Transaction Management(事务管理)、Transformation(转换)、Message Broker(消息代理)、Transportation Management(传输管理)、Security(安全)等核心模块。
Mule可以单独使用,也可以架设在常用的应用服务器上。
Mule ESBMule是当下使用最多的开源集成平台。
MuleESB价格低廉,配置、扩展简单,而且灵活性强,使得它非常流行。
Mule 是由MuleSoft(前身是MuleSource)开发的一个基于ESB架构理念的消息平台。
Mule ESB的核心是一个基于SEDA的服务容器,该容器管理被称为通用消息对象(Universal Message Objects /UMO)的服务对象,而这些对象都是POJO。
所有UMO和其他应用之间的通信都是通过消息端点(message endpoint)来进行的。
这些端点为众多的分立的技术,比如Jms, Smtp, Jdbc, Tcp, Http, Xmpp, file 等等,提供了简单和一致的接口。
架构说明:1.Mule主要有三个核心组件:传输器transport、路由器router、转换器transformer;2.transport负责在应用之间传递消息,router负责指导消息的传递路径,transformer负责消息格式的转换;3.可以在router中引入过滤器来针对消息内容进行过滤,实现基于内容的路由,并且只需通过xml即可完成,无需编写java代码;4.支持事务、安全、异常管理、JMX管理架构, 提供管理控制台(企业版);5.支持与Apache CXF、Spring和ActiveMQ的集成;6.提供Eclipse插件作为IDE开发Mule应用;Mule ESB的其他特性1.Mule中的组件可以是任何类型,你可以把POJO或者其他系统的组件集成进来;2.可以使用现存的任何组件而无需改变,也不需嵌入Mule的特定代码,不需调用Mule的API,业务逻辑和消息逻辑完全分离;3.消息可以是任何格式,如SOAP或二进制的图像文件;4.支持任何传输之上的异步,同步和请求响应事件处理机制.;5.Mule提供了一种简单而又强大的方式与RESfFul服务交互,即MuleRESTPack。
MULE介绍范文Mule是一种轻量级的企业服务总线(ESB)和集成平台,由MuleSoft公司开发和维护。
它旨在简化企业应用程序和系统之间的集成,并提供一种可靠和可扩展的机制来实现异构系统之间的通信和数据交换。
Mule具有广泛的应用领域,包括企业集成、云集成、数据同步、服务代理、API管理等。
它的主要优势在于其灵活性和可扩展性,使其能够轻松适应不同的业务需求和阶段。
Mule的核心是一个运行时引擎,它提供了一系列的连接器和转换器,可以方便地连接和转换不同的系统、协议和数据格式。
这些连接器包括HTTP、JMS、AMQP、FTP、RabbitMQ等,可以满足大多数企业应用程序之间的通信需求。
此外,Mule还提供了丰富的数据转换器,可以将不同的数据格式(如XML、JSON、CSV等)进行转换和转码。
Mule的架构采用了事件驱动和消息驱动的方式,支持异步、并发和分布式处理。
它将系统间的通信和数据交换抽象为消息传递,在不同的组件之间进行互操作,并通过事件驱动的方式进行流程控制。
这种方式能够提高系统的可伸缩性和性能,并支持高可用和故障恢复。
除了运行时引擎,Mule还提供了一系列的开发和管理工具,以便于开发者进行应用程序的设计、开发和部署。
其中包括Anypoint Studio,一个基于Eclipse的集成开发环境(IDE),提供了图形化界面和可视化工具,可以轻松地创建和配置Mule应用程序。
此外,Mule还提供了可扩展的管理控制台,用于监控和管理运行中的Mule实例。
Mule还提供了丰富的插件和扩展机制,使开发者可以根据具体的需求进行定制和扩展。
这些插件和扩展包括数据绑定、事务管理、安全认证、消息队列等,可以满足不同的集成场景和需求。
总体而言,Mule是一个功能强大、灵活和可扩展的企业服务总线和集成平台,可以帮助企业实现系统之间的无缝集成和数据交换。
它不仅能够提高敏捷性和业务灵活性,还能够提供可靠和可扩展的机制来解决企业集成的挑战。