`

《企业集成模式》读书笔记(一)

 
阅读更多

 

第一章 引言

(1)     集成解决方案必须应对以下几个基本挑战:

网络不可靠,速度慢。应用的平台技术不一样,应用会随时变化。

(2)   开发人员采用四个方式客服以上挑战

文件传输,共享数据库,远程过程调用(实时同步),消息传递(异步)。

术语:

       消息传递:支持高速,异步,程序到程序间可靠通信的技术。

消息:程序之间通过发送数据包进行通信。

通道:也称为队列,连接程序并传递消息的逻辑路径。

发送者:发送消息的应用,它把消息写到通道中。

接收者:从通道中读取消息的应用。

 

消息由两部分组成:消息首部(消息传递系统使用)和消息体(应用使用)。

消息传递系统的主要任务是为了把消息从发送者的计算机以可靠的方式传递给接收者的计算机。

 

消息传递的五个步骤:创建,发送,传递,接收,处理。

其实消息传递系统类似一个代理模式:本来应用A打算发送消息给应用B,这时候应用A先把消息发送给消息传递系统C,然后CB准备好的时候将存储转发消息到应用B。(其实消息传递系统也类似于支付平台,客户将钱给支付平台,支付平台在客户收到物品后将钱划拨给商家)。

优点:消息传递比文件传输更直接,对数据的封装比共享数据库更好,传输可靠性比远程过程调用高。

解决问题:

远程通信,跨平台、跨语言,

异步通信(1)发送者发完消息可做别的事情消息由消息传递系统传送,接受者发送应答消息通过另一个消息完成的;(2)同步通信时,调用者调用的速度由接受者的执行速度决定的,必须等待接受者完成调用处理才能接受到结果并继续运行。异步通信发送者可以按照自己的速度把请求批量发送给接受者,接受者也可以按照自己的速度处理请求。使得所有应用均以最大吞吐量运行(3)远程过程调用最大的缺点是单个接受者需要同时处理过多的调用时,可能负载过大,这会导致性能的下降,甚至让接受者崩溃。(即发送者很多,接受者很少的时候,接受者会崩溃)

可靠通信

当网络连接的时候再与服务器完成同步。

仲裁;消息传递系统在所有能够发送与接受消息的应用中扮演了仲裁者的角色。消息传递系统可以为共享资源(如数据库)提供大量分布式连接。

 

挑战:

实现复杂。一个简单的方法调用变成请求消息,请求通道,应答消息,应答通道,关联标识符和一个非法消息队列的组合。应用罗杰被分解到多个事件处理方法中。

序列问题:消息无序到达接受者。当消息之间互相关联时,重建消息序列比较重要。

同步问题:不是所有应用都需要异步方式,如果用户要查询机票,希望立即看到价格,而不是等待时间不确定。

性能:会增加通信的开销,因为他们把应用数据封装到消息中并发送,还要接受消息并处理消息。如果要传递大块数据(把消息划分成小块不明智)

有限的平台支持:有些平台或许不支持消息传递系统。

开发商锁定。

在决定哪些问题是用消息传递来解决时,请记住他们可能带来的后果。

 

分布式应用与应用集成的区别

分布式应用:一个企业应用通常有n层体系结构(属于更加复杂的客户/服务器体系结构),所以它能分布在多台不同的计算机上。即使这种结构会导致不同机器上的进程互相通信,但它仍然是属于分布式应用。因为它的通信部件是紧耦合的,之间互相直接依赖,任何一层离开其他层都会失去作用。其次层间一般采用同步通信。应用的用户一般只接受快速的系统响应。

 

集成的应用都是独立应用,能各自运行,还能采用松耦合的方式互相配合。每个应用集中完成一部分具体的功能,并将相关的功能委托给其他应用来完成。所以集成的应用一般采用异步通信方式,不需要等待响应就能继续执行,或者并发地执行其他任务,直到应答返回。集成的应用对时限的要求更宽松,使它们能够处理其他任务直到有调用结果返回,因此要比很多实时等待结果的用户更有耐心。

 

模式是描述问题,描述解决问题的方法以及解决问题的具体步骤。

 

分享到:
评论

相关推荐

    计算机书籍读书笔记参考.docx

    "计算机书籍读书笔记参考.docx" 本文档主要围绕 ASP.NET 和数据仓库两个主题展开,详细介绍了 ASP.NET 的工作方式、事件驱动模型、CLR(Common Language Runtime)运行阶段通用语言,以及数据仓库的概念、特点、...

    《数字化转型方法论》读书笔记.pdf

    《数字化转型方法论》读书笔记是对企业如何适应和利用数字技术进行根本性变革的深入探讨。这份笔记涵盖了从战略规划到执行落地的全过程,旨在帮助企业和组织在快速变化的数字时代找到自己的道路。 首先,数字化转型...

    系统集成项目管理工程师教程_阅读笔记

    综上所述,系统集成项目管理工程师需要理解并掌握信息化的基本概念,电子政务的实施策略和技术模式,以及企业信息化的规划、ERP和CRM的应用,以便在实际项目中有效地进行集成管理和决策。通过深入学习这些知识,...

    精益管理读书笔记

    ### 精益管理读书笔记知识点总结 #### 第八章:采用精益工程实践 ##### 8.1 持续交付基础 - **定义**:持续交付是一种软件开发实践,目的是确保软件产品可以在任何时间点发布到生产环境中,且不会出现重大错误。这...

    代码质量-读书笔记

    下面将详细解读这个领域的核心知识点,并基于"代码质量-读书笔记"的内容展开讨论。 首先,我们要理解什么是代码质量。代码质量不仅仅关乎代码的正确性,更包括其可读性、可维护性、可扩展性等多个方面。良好的代码...

    SpringBoot+Vue读书笔记功能管理系统(前后端分离包含数据库脚本文件).zip

    这是一个基于SpringBoot后端框架和Vue前端框架构建的读书笔记功能管理系统。这个系统实现了前后端分离的架构,提供了用户管理、书籍管理、笔记记录、搜索等功能,为用户提供了一个方便的在线阅读和笔记整理平台。 ...

    韩顺平老师最全读书笔记

    "韩顺平老师最全读书笔记"这个压缩包文件正是他课程精华的集合,包含了一系列重要的IT知识点。 首先,我们来看Java部分。Java是一种广泛使用的面向对象的编程语言,以其“一次编写,到处运行”的特性闻名。笔记中的...

    《企业智能制造服务系统实施方法》读书笔记模板.pptx

    企业智能制造服务系统实施方法读书笔记模板 智能制造服务系统是基于产品全生命周期的制造业务,在大数据、云计算、物联、移动互联、增强现实/虚拟现实等新一代信息技术的推动下,所形成的生产与服务、产品与服务...

    ArcGIS Server 读书笔记

    ### ArcGIS Server 读书笔记知识点总结 #### 一、ArcGIS Server 概述 - **定义**:ArcGIS Server 是一款全面的企业级地理信息系统(GIS)服务器平台,它支持多种服务类型和技术标准,具备强大的空间数据管理和分析...

    《从零开始学架构》读书笔记

    在《从零开始学架构》读书笔记中,总结了许多架构设计的关键知识点,下面将详细解释这些内容。 1. 架构与框架的区别:架构强调的是系统的“结构”,而框架则是关于“规范”。架构设计需要解决由系统的复杂性所带来...

    stm32F1读书笔记.zip_STM32F1 手册_stm32f1_stm32f1读书笔记_stm32读书笔记

    STM32F1系列是意法半导体(STMicroelectronics)推出的基于ARM Cortex-M3内核的微控制器,广泛应用于各种嵌入式系统设计。...同时,阅读读书笔记可以帮助快速回顾和查找关键知识点,提高开发效率。

    js读书笔记以及知识要点

    在阅读JS相关书籍时,我们应当关注以下几个关键知识点: 1. **基础语法**:JS语法与C/C++类似,但更注重动态特性。包括变量声明(var、let、const)、数据类型(原始类型如number、string、boolean,复杂类型如...

    ITIL读书笔记

    ### ITIL读书笔记知识点概述 #### 一、企业与IT关系的发展阶段 1. **技术驱动阶段** - 特征:在这个阶段,由于信息技术(IT)尚处于发展阶段,企业和组织对其价值的理解还不深入。然而,随着技术的快速进步,企业...

    开发者突击的配套Struts2SpringHibernate集成项目学习笔记2

    本项目"开发者突击的配套Struts2SpringHibernate集成项目学习笔记2"是一个综合性的学习资源,旨在帮助开发者深入理解这三大框架的集成与协同工作。 首先,Struts2是基于Model-View-Controller(MVC)设计模式的开源...

    个人笔记本.rar python 笔记本 tkinter

    【个人笔记本】是一款基于Python编程语言的开源笔记应用,它集成了Tkinter库,用于创建图形用户界面(GUI)。Tkinter是Python的标准GUI库,它提供了丰富的控件和布局管理器,使得开发者能够轻松地构建出功能完备的...

    《软件定义智慧企业:企业应用软件赋能数字化转型》读书笔记模板x.pptx

    数字技术不仅改变了生产方式,还催生了新的商业模式,如数字经济时代下的企业应用软件,它们成为科学范式的具体体现,推动企业旧有动能向新动能的转换,并促进了企业创新和产业集成。 在新科学范式下,智慧企业被...

    可随便做笔记、做标记的PDF阅读器

    "可随便做笔记、做标记的PDF阅读器"是一个专门针对这一需求设计的功能强大的应用,它允许用户在阅读PDF文件的同时进行注释和标记,提高工作效率和学习效果。 PDF阅读器的核心功能包括: 1. **查看PDF文件**:支持...

    web读书笔记

    在“web读书笔记”这个压缩包中,我们可以推测它包含了关于Web开发的个人学习记录和项目代码。"自己项目代码"这一标签暗示了这些文件可能是作者在实践Web开发过程中积累的经验和成果,尤其是以“二哥java”为名的子...

Global site tag (gtag.js) - Google Analytics