版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
千里之行,始于脚下。第2页/共2页精品文档推荐中间件体系结构和设计模式中间件体系结构与设计模式
软件模式专家J2EE专家
罗勇文
luoyw@
?自我介绍
?中间件软件体系结构[70分钟]–J2EE/.NET体系结构介绍
–J2EE/.NET实例分析?歇息10分钟
?企业设计模式[90分钟]
–服务拜访与配置模式
–事务处理模式
–分布式体系结构模式
–分布式计算模式
–并发模式
–时光模式
–数据库模式
?研究[10分钟]
?中间件体系结构的进展–集中式大型机模式
–文件分享模式
–客户/服务器模式
–传统的三层结构模式–早期的基于Web模式–J2EE模式
–.NET模式
中间件软件体系结构
?J2EE/.NET体系结构介绍
J2EE平台的演进
J2EE应用服务器
?容器为部署在其中的企业bean提供下列服务–分布式对象协议
–线程管理与同步
–进程管理
–事务处理
–平安
–状态管理
–资源分享
–数据存取
–系统管理支持
–失败恢复
–高可用性
–集群
–负荷分担
–生命周期管理
–大事服务
–…
J2EE1.4规范
246pages
J2EE1.4技术
?Servlets2.4?JSP2.0?EJB2.1?JMS1.1?JTA1.0.1B?JTS1.0?JMX1.2
?J2EEManagementAPI1.0?
J2EEDeploymentAPI1.1
?JCA1.5?JAXR1.0?JAX-RPC1.1?SAAJ1.2?JACC1.0?
JavaMail1.2
J2EE1.4与WebServices
“TheJava2Platform,EnterpriseEdition
version1.4isthemostcompleteWeb
servicesplatformever.”
source:/j2ee/1.4/download-dr.html
?SOAP
?SOAPwithAttachments?WSDL
?UDDI
?SOAPtransport
–HTTP
–HTTPS
?WS-IBasicProfile1.0
运行时的RMI-IIOP对象
分布式对象协议
?描述
–容器实现了用于企业bean与它们的客户之间
的通信的分布式对象协议
?好处
–Bean开发者只写本地JAVA代码,不必实现分
布式编程
线程管理与同步
?描述
–当需要服务于多个客户哀求时,容器启动和停
止线程。容器同步这些线程以避开对一个企业
bean实例的并发办法激活
?好处
–Bean开发者不必实现复杂的多线程程序。
Bean开发者编码这些也不办法好似企业bean
实例只被一个用户使用
进程管理
?描述
–容器可以使用与目标服务器最抱负的(或者由
系统管理员设定的)那样多的操作系统进程?好处
–Bean开发者不必关怀如何管理操作系统进程
事务处理
?描述
–基于部署描述符的指令,容器大概:将一个方
法调用包装在一个事务处理中,从一个客户移
入事务处理,容器将这个事务处理蔓延到资源
管理器和这个企业bean所点调用的其他企业
bean。容器还执行事务处理提交协议
?好处
–Bean开发者不必实现书务处理在一个分布式
系统中的复杂管理
平安
?描述
–容器在委派一个客户调用之前检查客户是否授
权来调用一个业务办法
?好处
–平安策略不必硬编码到企业bean中。它们能
够由部署者和系统管理员来设置以满足企业的
需要
状态管理
?描述
–容器在需要释放资源时可以去活一个企业
bean对象。以后,当这个对象被一个客户调
用时,容器激活这个对象
?好处
–容器能够达到一个高数量用户要求的可伸缩性
,而bean开发者的负担达到微小
资源分享
?描述
–容器能够高效地重用资源,如数据库的衔接,
以达到更高的性能
?好处
–Bean开发者不必开发复杂的分享规律
数据存取
?描述
–对于由容器管理持久性的实体bean,容器生成
数据存取规律
?好处
–在部署时调节一个企业bean以便和现有的数
据库一起工作
系统管理支持
?描述
–容器提供了系统管理工具来管理已经部署好的
应用
?好处
–企业bean在运行时可管理。bean开发者不必
开发管理支持作为应用的一部分
失败恢复
?描述
–容器能够提供一个重启一个失败的事务处理或
应用的原子性
?好处
–Bean开发者不必将失败恢复或重启规律编码
到应用中
高可用性
?描述
–容器可以提供成熟的高可用性策略对客户屏蔽
各种服务器错误
?好处
–由于高可用性支持对于bean开发者是透亮 的
,因此任何ejb应用能够制成高可用的,只要
将它们部署在一个实现了高可用性支持的容器
中
群集
?描述
–一个高端容器可以分布在一个群集服务的多个
节点上
?好处
–由于群集对于bean开发者是透亮 的,因此所
有的ejb应用能够运行在一个群集系统上
–服务拜访与配置模式[10分钟]–事务处理模式[10分钟]
–分布式体系结构模式[10分钟]–分布式计算模式[10分钟]
–并发模式[10分钟]
–时光模式[10分钟]
–数据库模式[10分钟]
服务拜访与配置模式
?包装器外观(WrapperFa?ade)
?组件配置器(ComponentConfigurator)?截取器(Interceptor)
?扩展接口(ExtensionInterface)
包装器外观
?描述
–包装器外观设计模式把现有的非面对对象的
API所提供的函数和数据封装在越发简洁、健
壮的、可移植的、可维护的和内聚的面对对象
的类接口中
组件配置器
?描述
–允许应用程序在不必修改、重新编印、静态地
重新链接应用程序的状况下,在运行时链接和
解链它的组件实现。组件配置器进一步支持在
不必关闭和重启运行的进程的状况下,把组件
重新配置到不同的应用程序进程。
截取器
?描述
–允许透亮 地把服务加到框架中,并且某些大事
发生时能自动地触发服务
扩展接口
?描述
–允许组件导出多个接口,当开发人员扩展或修
改组件的功能时,此模式能够防止接口的膨胀
和客户机代码的破坏
?ACID事务处理模式?复合事务处理模式?两阶段提交模式
?审计跟踪模式
ACID事务处理模式
?描述
–确保事务处理不会浮现非预期的或不全都的结
果,这可以通过确保事务处理拥有ACID属性
来实现。
–原子性Atomicity
–全都性Consistency
–自立性Isolated
–持久性Durable
复合事务处理模式
?描述
–人们通常希翼以最小的代价设计和实现正确的
事务处理,与复杂的事务处理相比,容易的事
务处理易于实现,而且也简单保证正确性。通
过较为容易的ACID事务处理可以设计和实现
复杂的事务处理
两阶段提交模式
?描述
–假如事务处理有多个数据库管理器发布的容易
事务处理组成,并且想让它们所有胜利完成或
者所有异样终止并使全部对象恢复到事务处理
开头前的状态,那么可以使用一个负责调节这
些事务处理的对象来实现
审计跟踪模式
?描述
–用户需要验证正在处理的事务处理的正确性和
公平性,这可以通过维护适用于一个或一系列
对象的事务处理的历史记录来实现。记录应当
含有足够的信息以确定事务处理如何影响对象
使之达到当前的状态
?分享对象模式
?对象哀求代理模式
?对象复制模式
?冗余自立对象模式
?提醒修复模式
?移动代理模式
?隔离带模式
?进程对模式
分享对象模式
?描述
–在信息或资源有限的状况下,有时需要多个客
户之间分享对象,以便分享对象所封装的信息
和基础资源可以集中管理与其他对象分享的对
象,这样可以不增强分享对象或被分享对象的
复杂性。
对象哀求代理模式
?描述
–也称ORB。分布式环境中的对象需要调用远
处对象的办法,要举行远程调用,必需正确处
理无数细节。可以提供一种允许对象举行远程
调用的基础结构,用过这种基础结构,可以自
动躲藏和处理大多数调用细节。
对象复制模式
?描述
–需要提高分布式计算的吞吐量和可用性。分布
式计算包含一些对象,它们驻留在多个计算元
素上,能够彼此举行通信。在有些状况下,可
以对计算的可用性和吞吐量加以改进,办法是
将一个对象复制到多个计算元素上,而对于对
象客户仍保留惟独一个对象的假象
冗余自立对象模式
?描述
–需求确保对象的可用性,即使它或者它的运行
平台出故障时也应如此。可以提供冗余对象来
完成,这种冗余对象不依靠于任何单个公共资
源
提醒修复模式
?描述
–当冗余对象集中又一个对象失效时,在囫囵冗
余对象集变为不行用之前必定会发生一次更小
的失效,为了使灾害性失效发生的可能性减到
最小,应当尽快地修复失效的对象
移动代理模式
?描述
–对象需要拜访大量的远程数据,为了保存网络
带宽,数据不放在对象上,而是将对象移动到
数据上
隔离带模式
?描述
–也称DMZ
–黑客将会威逼到公共可拜访服务器的平安。人
们固然不希翼黑客拜访非公共的以及还有敏感
信息的服务器。可以将在公共Internet上拜访
的服务器放到公共可拜访的LAN上,它位于防
火墙和公共Internet之间
进程对等模式
?描述
–为保持进程或软件组件的高可用性,用户希翼
在其失效后能够自动重启。将高可用性的软件
组件成对组织,这样当一个失效后,另一个可
以重启它
?对象标志符模式
?注册模式
?庇护代理模式
?发布-订阅模式
?重发模式
?邮箱模式
?分量级/轻量级模式?HeartBeat模式
?链接多路复用模式
对象标志符模式
?描述
–对于在多个对象中浮现的对象需要唯一的标识
,将一个全局惟一的标志符分配给该对象,这
样它在程序或数据库间分享时可以由惟一的身
份
注册模式
?描述
–对象需要与其他对象联系,但是假如只知道其
他对象的名字或其提供的服务名,如何与它联
系呢?可以提供一种服务来猎取对象、服务或
作用,并返回远程代理,远程代理封装了如何
与命名对象联系的内容
庇护代理模式
?描述
–恶意的对象可能想干扰其他对象的完整性,他
们使用反射或其他办法来拜访不该它们拜访的
办法或变量。基于平安考虑,应当避开这种情
况的发生,可以要求其他对象通过代理拜访敏
感对象,以限制对敏感对象的拜访。庇护代理
模式实现了一些措施,以确保其他对象不能访
问没有授权的敏感对象的特性
发布-订阅模式
?描述
–有时需要为一个或多个对象准时传递消息,要
将消息传递给订阅该消息的接收者对象,可分
别把各个消息传递给各个接收者。为了确保传
送牢靠,可在传送失败时重发直到胜利为止
重发模式
?描述
–需要确保对象牢靠地将消息发送给远程对象。
假如不胜利,再来一次,当对象发送失败后,
可以再试一次,直到发送胜利为止
邮箱模式
?为了将消息牢靠地传递给对象,可以将消息
保存起来,以便日后有各个接收者举行检索
分量级/轻量级模式
?描述
–设计一个客户程序,原则是尽可能小,该客户
程序必需能够拜访拥有无数属性的对象,并且
属性都是大型的对象,客户程序并不总是需要
属性,因此可以让客户程序下载不带属性的对
象,然后按照需要渐渐下载属性
Heartbeat模式
?描述
–当远程对象为了客户的利益执行一个操作时,
周期性地向客户发送信息,以表示远程对象还
处于激活状态
链接多路复用
?描述
–设计一个分布式系统,其中随着时光的推移,
一个对象可能和其他对象建立多个链接,为了
削减在两个相同对象之间建立和管理无数链接
的开销,可以支配一个实际的链接来完成多个
虚拟链接的工作
?Session对象模式
?锁文件模式
?静态锁排序模式
?并发优化模式
?线程池模式
?暂时缓存项模式
?事务处理状态堆栈模式
Session对象模式
?描述
–确定服务器和客户端之间举行的各个会话的状
态可能需要无数对象,可以使用一个对象,其
中包含服务器举行会话时所需的全部状态信息
。使该对象能被全部需要当前会话状态信息的
对象拜访
锁文件模式
?描述
–程序需要多外部资源举行独占拜访,在拜访资
源之前,应当设计一个程序检查锁文件是否存
在,假如存在,程序不使用资源,否则,程序
创建锁文件后再使用资源
静态锁排序模式
?描述
–假如两个对象需要独占拜访同一资源集,因为
每个对象保持一个资源锁,并且互相等待另一
方释放资源,就会引起死锁现象。可以通过让
全部对象以相同的挨次来猎取资源锁以避开死
锁的发生
并发优化模式
?描述
–假如不等待事务处理所需要的锁,那么可以通
过其他办法来提高事务处理的吞吐量。可以优
化并记录或包含对象的私有副原来执行事务处
理规律。一定要坚持在更新提交之前允许锁定
,但假如在允许锁定之前产生更新矛盾,则必
须放弃事务处理
线程池模式
?描述
–无数服务器都用一个稳定的任务流来表示,它
们必需在自己的线程中执行,创建线程是一个
相对来讲比较昂贵的操作。避开为每个任务创
建线程的办法是重用线程。可以使用一个办法
来管理线程,保证现场总数保超过预定的最大
数目
暂时缓存项模式
?描述
–高速缓存用于保存远程数据源数据的本地副本
,随着时光的推移,远程数据源数据的内容可
能会发生变化,因此,需要一个本地缓存反映
出远程数据源数据中的此数据变化。为了确保
本地缓存中的数据与远程数据源在一定时光内
匹配,可以考虑缓存中的数据具有一个最大的
使用周期
事务处理状态堆栈模式
?描述
–通过将对象的原始状态保存在堆栈中,可以在
嵌套的原子事务处理转变后举行恢复,该项技
术最适用于一些只转变本地对象或很简单拜访
的对象的事务处理
?时光服务器模式?版本对象模式
?历史属性模式
时光服务器模式
?描述
–为使一些分布式应用程序正确地运行,计算机
上的时钟必需保持同步。为了确保多台计算机
上的时钟同步,可以使用公共时钟来同步
版本对象模式
?描述
–有时候,可能需要拜访对象以前或未来的状态
,当对象取得一种新的状态是,要保存新的和
旧的状态,可通过时光标记或版本号来标志状
态,通过识别时光标记或版本号,可以打算是
否允许拜访特定的对象状态
历史属性模式
?描述
–对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电子绝缘与介质材料制造工岗前工作效率考核试卷含答案
- 汽车零部件装调工岗前复试考核试卷含答案
- 金黄色葡萄球菌护理
- 医疗行业的人才培养与职业发展
- 老年护理需求评估与护理实践研究
- 肾脏病治疗新方法与临床挑战
- 2025年医学分析-口腔颌面颈部脉管神经(口腔解剖生理学课件)
- 执业医师资格考试《临床执业医师》第三次测(含)
- 混合方法研究在心脏康复研究中的应用
- 《内科学基础》课件
- 2026年麻精药品培训考核试题及答案
- SL T 619-2021 水利水电工程初步设计报告编制规程
- 雨课堂学堂在线学堂云《机器学习实践(北京理工)》单元测试考核答案
- 2026年及未来5年市场数据中国超休闲游戏行业发展潜力预测及投资战略、数据研究报告
- 湖南洲煌商贸有限公司内部会计监督制度优化设计
- 2026年低空经济与文旅融合方案与项目创新设计
- 大学课程设计介绍
- 工业大数据与人工智能 课件全套 第1-7章 绪论、工业大数据-工业大数据与人工智能应用
- 银行现金取款合同范本
- 贵州省遵义市2025-2026学年高三上学期高考10月考试英语试卷
- 湖南省西学中结业考试题目及答案
评论
0/150
提交评论