本书重点介绍应用集成的四种主要方式:文件传输、共享数据库、远程过程调用、消息传递。利用文件传输和共享数据库,应用能够共享它们的数据,但不能共享功能。远程过程调用使应用能够共享功能,但是这会让应用紧耦合。消息传递使应用能够共享功能,让应用松耦合。运行消息传递,可以使用可定制的格式频繁地、立即地、可靠地、异步地传输数据包。本书主要是围绕消息传递方式来集成应用,完成企业集成模式、设计、构建及部署。书中也介绍了消息是怎样传递的,我们不需要完全理解,那个对我来说太难了。我们需要熟悉WebSphere MQ、MSMQ、JMS等消息服务产品,然后利用它们能开发企业集成系统,特别是金融业、保险业企业集成系统。
书中一些重点内容节选
一、消息传递产品和技术:
1、 由IBM(WebSphere MQ系统)、Microsoft(BizTalk)、TIBCO、WebMethods、SeeBeyond、Vitria以及其他一些开发商提供的面向消息的中间件和EAI套件。
2、 合并到商业和开放源代码J2EE应用服务器中的Java消息服务(JMS)实现及独立产品。
3、 Microsoft的消息排队(MSMQ),可以通过多个API(包括Microsoft .NET中的System.Messaging库)进行访问。
4、 新兴的支持异步Web服务的Web服务标准(例如WS-ReliableMessaging)以及有关的API,如Sun的用于Web服务扩展(Web Services Extensions,WSE)。
二、应用之间的集成解决方案必须应对以下几个基本挑战:
■网络是不可靠的。
■网络速度慢。
■任何两个应用都是不同的。集成解决方案需要在使用不同编程语言、不同操作平台和不同数据格式的系统之间传送信息。
■改变是难免的。应用会随着时间改变。
开发人员使用以下四种主要方法克服上述挑战:
1、 文件传输——一个应用写文件,之后另一个应用读这个文件。为此,应用之间需要协商文件名、文件的位置、文件格式、文件读写的时间以及谁负责删除这个文件。
2、 共享数据库——多个应用共享相同的数据库,这个数据库位于独立的物理数据库中。由于不存在重复保存的数据资料,因此不必将数据从一个应用传给另一个应用。
3、 远程过程调用——一个应用开放其部分功能,使得其他应用能够远程访问这些过程。它们之间的通信是实时、同步的。
4、 消息传递—— 一个应用向公共消息通道中发布一个消息,其他应用可以在之后某个时间从通道中获得这个消息。应用之间必须协商建立通道以及消息的格式。这种通信是异步的。
每种方法均有其独特的优点和不足。实际上,应用之间可通过多种方法集成,使得每个集成点都能充分利用最合适的方法。
三、消息传递的概念、原理
消息传递是一种能支持高速、异步、程序到程序间可靠通信的技术。程序之间通过发送数据包进行通信,这个数据包即称为消息。通道是连接程序并传递消息的逻辑路径。
四、应用分布与应用集成的区别:
应用分布:它的通信部件是紧耦合的,它们之间相互直接依赖,其中任何一层离开其他层都会失去作用。层间一般采用同步通信。应用的用户一般只接受快速的系统响应。
应用集成:都是独立的应用,它们能各自运行,采用松耦合的方式相互配合。这使得每个应用都能集中完成一部分具体的功能,并将相关的功能委托给其他应用来完成。所有集成应用采用异步通信方式,它们不必等待响应就能继续执行。并发地执行其他任务。集成的应用对时间限制的要求更加宽松。
五、商业消息传递系统
消息传递开发商的产品大致划分为以下四类:
1、 操作系统。消息传递已经成为开发商把必要的软件基础设施集成到操作系统或数据库平台中的共同需要。例如,Windows 2000和Windows XP操作系统包含了Microsoft消息排队(MSMQ)服务软件,通过COM组件和System.Messaging名字空间访问,属于.NET平台的组成部分。Oracle提供了Oracle AQ.
2、 应用服务器。例如JMS、IBM WebSphere、BEA WebLogic
3、 EAI套件。例如IBM WebSphere MQ、Microsoft BizTalk、TIBCO、WebMethods、SeeBeyond、Vitria、CorssWolds。
4、 Web服务工具集。例如WS-Reliability、WS-ReiableMessaging、ebMs
六、应用集成
应用集成的四种主要方式:文件传输、共享数据库、远程过程调用、消息传递。利用文件传输和共享数据库,应用能够共享它们的数据,但不能共享功能。远程过程调用使应用能够共享功能,但是这会让应用紧耦合。消息传递使应用能够共享功能,让应用松耦合。运行消息传递,可以使用可定制的格式频繁地、立即地、可靠地、异步地传输数据包。
CORBA、COM、.NET Remoting、Java RMI、Web服务都实现了远程过程调用。Web服务还提供了额外的功能,它使用了诸如SOAP和XML等标准。Web服务的最大特定是,可以很容易地利用HTTP协议,而这种协议能够轻松地穿过防火墙。
七、消息传递系统
分享到:
相关推荐
ASP.NET Core Web API 学习笔记汇总.pdf 是一个聚焦于使用ASP.NET Core构建Web ...这份学习笔记汇总可能会涵盖这些知识点的实例、最佳实践以及常见问题解决方案,对于深入理解和应用ASP.NET Core Web API开发大有裨益。
### Spring Cloud Alibaba(基础) 学习笔记 #### 微服务概述及发展历程 微服务架构是一种将单一应用程序开发为一组小服务的方法,每个服务运行在其独立的进程中,并使用轻量级机制(通常是HTTP资源API)进行通信...
【标题】:基于Django和Bootstrap3构建的学习笔记网站 【描述】:这个项目是一个学习笔记网站,使用了Python的Web框架Django以及前端UI框架Bootstrap3进行开发。Django以其MVT(Model-View-Template)架构模式,...
总之,ServiceMix学习笔记将引导读者深入理解JBI标准,掌握ServiceMix的安装、配置、服务单元创建、路由规则设定、监控及故障排除等方面的知识,同时领略其作为企业级集成平台的强大潜力。通过这份笔记,读者将有...
**J2EE学习笔记概述** J2EE(Java 2 Platform, ...理解并掌握J2EE的各项技术,能够帮助开发者构建稳定、高效的企业级解决方案。"j2ee学习笔记.pdf"这份资料将详细阐述这些概念,是Java初学者和爱好者的宝贵学习资源。
【JBPM4.3学习笔记及请假流程代码】 JBPM(Java Business Process Management)是一个开源的工作流管理系统,它提供了一套完整的解决方案,用于管理和执行业务流程。JBPM4.3是该系统的其中一个版本,它包含了流程...
11. **不包含部署服务器**:这个学习笔记可能不涉及服务器部署,这通常包括设置虚拟环境、安装必要的依赖、配置Wsgi服务器(如gunicorn或uWSGI)以及反向代理(如Nginx)等步骤。 以上就是基于“learning_log”这个...
在"biztalk2006实战笔记"中,我们可以预期学习到如何利用 BizTalk Server 2006 构建实际的业务解决方案。 1. **BizTalk Server 2006 基础** - **架构**:了解 BizTalk Server 的核心组件,如 BizTalk Server ...
以下是对AWS认证解决方案架构师——助理学习笔记的详细解析: 1. **AWS基础知识**:首先,你需要掌握AWS的基本概念,包括其服务模型、全球基础设施(如地区、可用区)、计算、存储、数据库、网络和安全等方面的基础...
【WebService的实现——CXF学习笔记】 在Java世界中,WebService是一种通过标准协议(如SOAP)进行跨平台、跨语言通信的技术。CXF是Apache软件基金会的一个开源项目,它提供了构建和消费Web服务的工具和库。CXF支持...
SpringCloud是Java开发人员在构建分布式系统时常用的一套微服务框架,它提供了全面的解决方案,包括服务发现、配置中心、断路器、智能路由、微代理、控制总线、全局锁、领导选举、分布式会话、集群状态等。...
同时,Spring还提供了一系列底层需求的解决方案,如单例模式类和属性文件解析等,使得开发者能够更加专注于业务逻辑层面的开发。 2. **AOP编程的支持**:Spring的AOP功能使得面向切面编程变得更加容易。这种方式有...
3. **设计模式**:工厂模式、单例模式、观察者模式等23种GOF设计模式,是解决常见软件设计问题的通用解决方案。熟悉并能灵活运用设计模式,有助于写出可维护、可扩展的代码。 4. **框架与库**:比如Spring Boot、...
2. **安全编程**:包括输入验证、防止SQL注入、XSS攻击等,笔记会强调安全编程的重要性并给出解决方案。 3. **性能优化**:如缓存技术、代码优化技巧,提升PHP程序的运行效率。 4. **部署与服务器配置**:了解如何...
Spring框架尤为突出,它提供了一站式解决方案,涵盖了依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)、数据访问和事务管理等。 **3. Spring框架详解** Spring是目前最流行的J2EE轻量级框架,它的核心...
jbpm(Java Business Process Management)是一款开源的工作流管理系统,它为业务流程自动化提供了一套全面的解决方案。jbpm不仅支持工作流的建模、执行,还提供了监控和管理功能,使得开发者可以方便地构建和部署...
综上所述,"轻量级消息弹框插件代码.rar"提供了一套完整的解决方案,用于在网页中集成具有视觉吸引力且易用的消息提示功能。无论是对于初学者还是经验丰富的开发者,它都提供了学习和实践前端开发技能的机会,特别是...
JBPM是一个开源的工作流管理系统,它提供了业务流程建模、部署、执行、监控和管理的一整套解决方案。JBPM支持BPMN2.0标准,使得业务流程可以以图形化的方式进行设计和理解,同时提供了与Java EE应用程序集成的能力。...
总的来说,《Elixir in Action》第二版是一本深入学习Elixir语言和实践的宝典,配合作者的笔记和解决方案,将帮助你掌握Elixir的核心概念和技术,从而能够构建出强大且高效的系统。无论你是初涉Elixir,还是希望提升...