说明:本系列文章是学习谷歌的架构师Gregor Hohpe 与人合著的《企业集成模式(Enterprise Integration Patterns)》一书的翻译及解释和针对本人工作遇到的相关问题的思考。
参考网站:[url]www.enterpriseintegrationpatterns.com [/url]
前言(preface)
本书是一本关于用消息机制的技术进行企业应用集成的书。它不是特定的技术和产品的技术文档,相反,它关注于帮助开发者和系统集成人员理解相关产品和技术,比如(以下具体产品和技术不翻译,真搞技术的人你懂的):
* Message-oriented middleware (MOM) and integration suites offered by vendors such as the IBM (WebSphere MQ Family), Microsoft (BizTalk), TIBCO, WebMethods, SeeBeyond, Vitria, and others * Java Message Service (JMS) implementations incorporated into commercial and open-source J2EE application servers as well as standalone products
* Microsoft’s Message Queuing (MSMQ), accessible through several API’s, including the System.Messaging libraries in Microsoft .NET
* Emerging Web services standards that support asynchronous Web services (for example, WS-ReliableMessaging) and the associated API’s such as Sun’s Java API for XML Messaging (JAXM) or Microsoft’s Web Services Extensions (WSE).
介绍企业集成:
Enterprise integration goes beyond creating a single application with a distributed n-tier architecture, which enables a single application to be distributed across several computers. Whereas one tier in a distributed application cannot run by itself, integrated applications are independent programs that can each run by itself, yet that function by coordinating with each other in a loosely coupled way. Messaging enables data or commands to be sent across the network using a “send and forget” approach where the caller sends the information and then goes on to other work while the information is transmitted by the messaging system. Optionally, the caller can later be notified of the result through a callback. Asynchronous calls and callbacks can make a design more complex than a synchronous approach, but an asynchronous call can be retried until it succeeds, which makes the communication much more reliable. Asynchronous messaging also enables several other advantages such as throttling of requests and load balancing.
企业集成不是一种用分层架构来设计单一应用的工作,它是一种让单应用系统能分布运行在多台计算机上。在分布式系统上单一子系统无法单独运行,集成的各子系统不是依靠自己就能独立运行的程序,相反,分布式系统上各子系统依靠一种松耦合的方法来协作运行。消息机制使数据和命令能通过一种“发送和遗忘”的机制来完成跨网络传输。
“发送和遗忘”机制是一种调用者发送消息后就返回到自己的工作,具体工作交由消息系统(相当于领导的秘书,具体会议通知由秘书去做,领导(调用者)只关注结果)处理的机制,以后调用者能通过消息系统回调机制得到发送消息成功与否。
异步调用和回调比同步调用复杂,但是能被消息系统重复执行直到成功,而需要完成消息发送的调用者无需关注此过程,这种机制使通讯更加可靠,同时他也保证了子系统之间的请求减少(这个地方还行斟酌)和负载均衡。
分享到:
相关推荐
《企业集成模式》是马丁·福勒(Martin Fowler)撰写的一本经典著作,它深入探讨了在企业级系统中如何有效地实现不同应用之间的通信和集成。这本书为软件开发者提供了丰富的设计模式,帮助他们构建可扩展、灵活且...
在IT行业中,集成不同的软件框架和技术是常见的任务,特别是在企业级应用开发中。"StarFlow 与J2EE项目的应用集成"是一个关键的话题,它涉及到流程编排、服务整合以及后端系统的高效协同。让我们深入探讨这个主题。 ...
通过对这些源码的分析和学习,开发者可以加深对J2EE设计模式的理解,掌握实际项目开发中的最佳实践,从而提升自己的技能水平。无论是初学者还是有经验的开发者,这份资源都能提供宝贵的参考和学习材料。
- 本书还包含了一些具体的案例研究,展示了如何在实际项目中应用J2EE技术栈。 #### 三、技术细节与应用场景 - **Web层**:主要处理HTTP请求和响应,通常由Servlets和JSP组成。 - **业务逻辑层**:实现应用程序的...
在IT行业中,J2EE(Java 2 Platform, Enterprise Edition)是Java平台的一个版本,专为构建企业级应用而设计。这个技术栈包含了多种服务、APIs和协议,旨在简化多层架构中的分布式应用程序开发。本项目开发案例将带...
在J2EE项目中,模型通常由EJB或普通Java类实现,视图是JSP,控制器可能是Servlet或JSF(JavaServer Faces)组件。 5. **JDBC与数据库交互**:JDBC是Java中连接和操作数据库的标准接口。在本项目中,开发者可能使用...
为了更好地理解和应用Drools,你可以阅读“规则引擎Drools在J2EE项目开发中的应用.pdf”这份文档,它将详细讲解如何在实际项目中集成和使用Drools,包括规则的编写、引擎的配置、以及与J2EE环境的交互等内容。...
《Sun Certified Enterprise Architect for J2EE Study Guide》是针对Sun Microsystems公司推出的J2EE企业架构师认证考试的一本详尽指南。这本书旨在帮助读者全面掌握Java企业级应用开发的精髓,以便成功通过这个高...
在IT行业中,J2EE(Java 2 Platform, Enterprise Edition)是一个重要的企业级应用开发平台,它由Oracle公司提供,用于构建分布式、多层的、跨平台的企业级应用程序。本项目实例源码聚焦于J2EE的专业应用,是开发者...
通过对这些源码的分析和学习,开发者可以理解如何在实际项目中整合这些技术,提高自己的J2EE开发能力。同时,这也是一个很好的机会去了解和解决实际项目中可能遇到的问题,如性能优化、安全性考虑、异常处理等。所以...
通过深入研究提供的J2EE项目案例源代码,初学者不仅可以学习到如何在实际项目中应用这些技术,还能了解如何组织代码结构,遵循设计模式,以及如何有效地利用J2EE提供的服务。这将有助于他们快速提升在企业级Java开发...
**J2EE专业项目实例开发**是针对Java企业级应用开发的一个重要学习资源,它涵盖了在实际工作中可能遇到的各种技术和应用场景。在这个31.5 MB的压缩包中,你将找到一个名为“J2EE专业项目实例开发.pdf”的文档,这...
在J2EE中,适配器模式常用于将现有的第三方API或组件集成到J2EE应用中,使这些组件能够与J2EE标准兼容。 #### 5. Decorator(装饰器模式) 装饰器模式动态地给一个对象添加一些额外的职责。它提供了一种比继承更...
在J2EE(Java Platform, Enterprise Edition)环境中,JMS扮演着核心角色,尤其是在实现企业级的分布式系统和微服务架构时。 JMS的主要组件包括: 1. **消息生产者(Message Producer)**:负责创建并发送消息到...
在J2EE项目中,常见的技术栈包括Servlet、JSP、JDBC、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JPA(Java Persistence API)以及Spring框架等。这些技术相互协作,构建出复杂的业务逻辑和数据...
### J2EE项目实战案例研究 #### 一、相关概念介绍与J2EE架构解析 J2EE(Java 2 Platform, Enterprise ...通过实际项目开发,开发者可以深入理解J2EE的各项技术,并将其应用于实际工作中,解决复杂的企业级应用问题。
在J2EE项目中组建一个高效的开发团队是项目成功的关键因素之一。J2EE(Java 2 Platform, Enterprise Edition)是一种广泛使用的后端开发平台,它支持多层架构,允许分布式应用程序的开发。为了充分利用J2EE的优势并...
在提供的压缩包中,"JAVA EE 论文模板.doc"可能是对J2EE项目开发模板的详细讨论或案例分析。这份文档可能包含了模板的具体结构、使用方法、优势以及实际项目中的应用示例,对于深入理解和应用J2EE项目开发模板非常有...
本文将深入探讨软件体系架构模式在J2EE(Java 2 Platform, Enterprise Edition)环境中的应用,帮助开发者理解和运用这些模式来创建高效、可扩展的企业级应用。 首先,我们了解下什么是J2EE。J2EE是Java平台的一个...
在IT行业中,J2EE(Java 2 Platform, Enterprise Edition)是一种广泛使用的开源框架,用于构建企业级的分布式应用程序。这个框架提供了丰富的服务,包括安全、事务管理、资源连接池等,以支持大规模、高性能的应用...