- 浏览: 472614 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (371)
- Java (44)
- Flex (25)
- Design Pattern / UML (5)
- JVM (14)
- Software Engineer (4)
- Testing (30)
- Web Backend (60)
- Linux (7)
- Database (11)
- SOA (28)
- English (6)
- FX (5)
- SAP Support (25)
- SAP Development (5)
- SAP Impl & Oprn (8)
- Articles (15)
- Music (4)
- Recipe (14)
- Multi-thread (4)
- Lucene (2)
- CS basic / Algorithm (12)
- Tour (3)
- C C++ (21)
- Others (10)
- Code Repository C++ (1)
- Code Repository Java (1)
- Code Repository Algorithm (1)
- Code Repository SQL (1)
- Web Frontend (4)
最新评论
-
xiangxm:
Java 强引用、 软引用、 弱引用、虚引用 -
nml-lyb:
123
Mule 的第一个例子 -
nml-lyb:
http://www.baidu.com
Mule 的第一个例子 -
white___ant:
...
Java 强引用、 软引用、 弱引用、虚引用 -
joeyon:
...
Java NIO介绍
下面这段文字为转载:http://dragonetzhou.iteye.com/blog/171499
首先考虑一个最简单的例子:只有一个入口和一个出口。只涉及到一个服务提供者和服务消费者。服务提供者只提供webservice协议进行访问。消费者只
能通过http协议。那么两者如何通信呢。消费者没法直接访问提供者,那么消费者就访问ESB了。ESB就提供了一个虚拟的基于http协议的端点。然后
ESB就在另外一端以webservice协议访问提供者。就这么简单。
但是在这里必须弄清楚的是:从服务提供者的视角来看,只有一种方式连接到ESB。从消费者的视角来看,可以以多种方式访问ESB。从ESB的视角来看,有多种方式访问服务提供者,但是对于一个特定的服务提供者来说访问方式是一定的。
好了。这里定义了两个端点(服务地址+访问协议)。一个是虚拟的ESB为消费者提供的访问端点。一个是真实的可以为ESB所能访问到的服务端点。那么在这两个端点之间又有点什么东西呢?应该定义什么东西来连接着两点呢?Mule
定义了一个叫UMO
的组件。然后将两个端点附在了UMO
上面。UMO
本来就是一个虚的概念,它可以是POJO,也可以什么都不是。Mule
需要一个载体来完成两个端口的连接,这个就是UMO
。这样Mule
就可以将其他的ESB概念:数据格式的转换,路由,监控和日志往UMO
上面加了。这么一路下来不就是一个管道的概念了吗?服务消费者-->入站端口-->数据格式转换-->路由-->UMO
-->路由-->数据转换-->出站端口-->服务提供者。
到这里,前面一段是根据正常的思路一步步走来。后面我就开始胡思乱想了,也不知道原作者是不是这么想的。
UMO
之虚与实:当出站端口连接的是一个真实的访问地址,这个UMO
就是实的;反之则是虚的。UMO
也
可以同时有实有虚。例如下图,UMO1就有虚有实,UMO2就是一个实的。为什么会这样呢?实与虚其实是针对是否有业务服务来说的。有则是实的,没有则是
虚的。根据ESB是连接,管理,路由的这么一个原则。实的端口就实现了连接的这么一个功能。而需的其实起到了一个路由的作用。那么一个服务请求完全有可能
经过N个虚的UMO
才到达服务提供者。ESB不应该有真实的业务服务。那么UMO
就是一个抽象的东西,它不实现业务逻辑。
画完这幅图,我怎么觉得它像一个树形结构啊。UMO
是枝,Service Provider 就是叶啊。
端点之主动与被动:一说到主动,被动,我就想到男的应该主动,女的应该是被动的。那么ESB应该是主动还是被动呢?两者都有,那ESB岂不是不男不女。扯
远了。首先ESB作为服务提供者的代理,它应该提供代理服务被动让各种消费者访问;其次,ESB作为服务的联系人应该主动地调用真实的服务。那么像前面的
例子,入站就是被动服务啦,有请求来我就进行处理,请求通过继续往前走,不通过就打回去。出站就是主动服务了,调用真实的业务服务组件。那么Mule
是如何处理的呢?Mule
也定义了入站和出站。Mule
的出站没什么好说的,肯定是主动出击了,访问真实的服务或是下一个UMO
节点。可是Mule
的
入站除了被动,还可以主动。先说被动,例如http,soap,servlet,tcp,vm等协议在入站时就是被动的,有请求来我就处理。其实现就是把
MessageReciever设计成一个监听服务,不断监听端口是否有请求进来。这个太好理解了。可是对于file,ftp,jdbc协议,竟然可以是
主动出击,而不是被动等待。奇怪了,what
happen?仔细想了想,问题出在协议上面,http等协议是一种请求/响应的模式。而file等协议是一种实体操作模式,例如读写文件系统,读写数据
库。所有这种模式在入站端只能是主动出击了,从文件系统和数据库自动抓取数据。
=============================================
自己的总结:
最近一段时间研究了 Mule ESB, AquaLogic ESB 这两种实现 SOA 的技术(或者叫做平台)。经过前一阵子的懵懵懂懂,现在很多东西都越来越清晰了。
上面转载的这篇文章,从全局的角度来说,和我的理解完全一致。研究完mule之后,再用一用aqualogic,大部分的概念(代理服务,业务服务,路由,叶子节点,管道...)都会豁然开朗。
还需要理解的一个问题就是: 在mule 的内部,inbound --> component --> outbound 数据的一步步传递是通过 底层 事件 的机制实现的。
计算机的好多东西都是 想起来容易 实现起来难。 我下一步的目标就是把 项目中的 那套mule的东西 整明白。把公司的东西变成自己的东西。让自己变得更值钱,嘿嘿...
发表评论
-
Mule 例子:以axis做为inbound,传递复杂类型,MuleClient UMOMessage
2009-09-22 16:29 3020这个例子出自:http://raymondhekk.iteye ... -
Axis 客户端代码
2009-09-22 16:16 1882import org.apache.axis.client.C ... -
Mule 的 Loan Broker 例子的 PPT (经典的ESB的例子)
2009-09-21 14:26 1849http://wiki.springside.org.cn/d ... -
Aqualogic Service Bus 的第三个例子 (消息流进阶)
2009-09-18 17:34 1043P87 的那个例子 1、已经发布的Web Servic ... -
Aqualogic Service Bus 的第二个例子 (消息流基础)
2009-09-17 15:15 1233消息流节点类型: 启动节点、路由节点、分支节点、管道对节点 ... -
Aqualogic Service Bus 的第一个例子 (入门)
2009-09-17 11:17 1590本例子出自 《SOA权威指南》 第三章中的那个入门例子。 亲 ... -
Mule Transformers
2009-09-07 14:58 1731Using Transformers [ Configuri ... -
XMPP协议简介
2009-09-07 14:15 1800XMPP协议简介 XMPP(Ext ... -
REST(Representational State Transfer) 介绍
2009-08-31 23:24 1367REST(Representational State Tra ... -
Staged Event Driven Architecture (SEDA) 介绍
2009-08-31 10:29 2470一、前言 二、当前流行的两种并发处理编程模型 ... -
Camel 入门
2009-08-27 18:25 911前段时间和一些朋友聊 ... -
OSGi 入门
2009-08-27 18:15 719还没开始入... -
Mule 的消息路由
2009-08-27 17:53 1264Mule的消息路由 作者 J ... -
Mule 的第二个例子
2009-08-27 15:17 2974这个例子 主要 演示了 web service 作为 inbo ... -
Geronimo入门
2009-08-25 16:23 971http://www.matrix.org.cn/resour ... -
Apache Mina 入门
2009-08-25 13:31 11972007 年 12 月 24 日 本文将通过一个简单的问 ... -
CXF -- JAXB
2009-08-21 10:38 5604JAXB : Java API for XML Bindin ... -
CXF -- JAX-WS
2009-08-21 10:01 1385JAX-WS Java API for XML Web Se ... -
CXF的第一个例子 -- 深入剖析
2009-08-20 20:43 1732Web Service 的 Client 和 Server 端 ... -
CXF的第一个例子 (附 wsdl详解)
2009-08-20 16:52 30801、在eclipse中 创建一个java project。 ...
相关推荐
该文档是本人查阅国外官网,个人实践撰写60页常用开发技术,可适用于大多数Mule业务开发 ,提供配套视频讲解 ,https://space.bilibili.com/405243872/dynamic,对于付费用户可提供相关源码及安装包文件,bilibili请...
Mule ESB支持多种传输协议、消息格式和数据转换,可以简化服务集成的复杂性,并提供强大的消息路由、转换和分发能力。 2. Mule Studio 使用 Mule Studio是基于Eclipse的集成开发环境(IDE),它为开发人员提供了一...
《深入解析Mule ESB源码》 Mule ESB(Enterprise Service Bus,企业服务总线)是一款开源的集成平台,旨在简化企业级应用之间的数据交互。本文将围绕Mule ESB的源码进行深入探讨,揭示其核心设计理念与工作原理。 ...
3. **消息路由**:基于内容和规则的消息路由功能允许Mule ESB根据特定条件对消息进行筛选、合并和重新排序,增强了系统的灵活性和智能性。 4. **数据转换**:Mule ESB支持在不同的数据格式和传输协议之间进行转换,...
Mule ESB 开源框架简介 Mule ESB 是一个基于 Java 的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换。Mule ESB 支持集成现有系统而无论其底层采用何种技术,如 JMS、...
**企业集成平台(EIP)与企业服务总线(ESB)** 企业集成平台(Enterprise Integration Platform, EIP)是企业信息化建设...通过学习和实践,你可以掌握如何利用Mule ESB优化企业的服务集成,提升系统的健壮性和效率。
Mule ESB Studio 3.3 中文使用手册(官方翻译) Mule ESB Studio 3.3 是一款功能强大且灵活的集成平台,旨在帮助开发者快速构建、部署和管理企业级集成解决方案。该手册旨在指导用户如何安装、配置和使用 Mule ESB ...
《Mule ESB详解——构建...总结来说,Mule ESB是企业级集成的重要工具,通过它,企业可以打破系统间的壁垒,实现数据和服务的高效流通。深入了解并熟练掌握Mule ESB,将极大地提升企业的技术能力,推动业务创新和发展。
- 使用命令行工具或启动脚本(如“bin/mule.bat”或“bin/mule.sh”)启动Mule ESB。 5. **监控与管理**: - Mule ESB 3.9.0提供了一个内置的管理界面,可以通过Web浏览器访问,用于监控运行状态、查看日志和管理...
### Mule ESB 3 教程概览 #### 一、引言 Mule ESB 3(Enterprise Service Bus)是一款广泛应用于企业级集成场景的开源中间件平台。本书旨在为开发者提供全面且深入的指导,帮助他们掌握如何利用Mule ESB 3 开发...
总结来说,《Mule ESB 3用户指南》为用户提供了一个全面的、步骤详细的、实践导向的指导,从基础的配置、服务集成到开发、测试、文档编写和云服务集成,覆盖了使用Mule ESB进行企业级集成应用开发的各个阶段。
### ESB原理及Mule ESB实践 #### ESB(Enterprise Service Bus)原理概述 **ESB**(企业服务总线)是SOA(面向服务架构)架构中的关键组件之一,用于实现服务间的智能集成与管理。其核心作用在于简化不同系统间的...
Mule ESB通过提供一种松散耦合的方式,降低了系统间的依赖性,提高了系统的可维护性和可扩展性。 2. **Mule ESB架构**:Mule ESB基于事件驱动的架构,允许它快速响应系统中的变化。它由消息代理、连接器、数据转换...
9. **版本管理**:升级或维护MULE ESB时,需要注意兼容性问题,同时需要备份现有应用,以免丢失配置或数据。 综上所述,MULE ESB-4.1企业版运行环境是企业级集成和API管理的重要组成部分,它为开发、部署和管理Mule...
Mule ESB 是一个轻量级的基于java的企业服务总线和集成平台, 使得开发人员可以快速,简单的连接多个应用, 使得它们可以交换数据。 Mule ESB 容易集成现有异构系统,包括:JMS, Web Services, JDBC, HTTP, 等. ESB...
Mule ESB,全称Mule Enterprise Service Bus,是一个开源的企业服务总线系统,旨在促进不同应用程序和服务之间的数据交换和集成。Mule的核心设计是基于轻量级的Java平台,尤其是J2EE 1.4标准,使得它能够在各种企业...
Mule ESB内置了对JSON格式的原生支持,提供了JSON转换器,方便数据在不同服务间传输时保持格式的一致性。 ### 总结 这份指南详细介绍了Mule ESB 3的各个方面,从基础概念到高级配置,从创建基本服务到与外部云服务...
MULE ESB-4.1社区版是Mulesoft为开发者提供的免费版本,它包含了基本的ESB功能,适合学习、开发和小规模项目部署。 在MULE ESB-4.1社区版中,主要包含以下几个关键组件和概念: 1. **AnyPoint Studio**: AnyPoint ...
目前市场上有多种 ESB 产品,包括 Oracle 的商业 ESB 产品、Progress 的商业 ESB 产品、TIBCO 的商业 ESB 产品、Mule 的开源 ESB 框架、WSO2 的开源 ESB 框架等。这些产品都提供了基本的 ESB 功能,包括消息传递、...