资源预览内容
第1页 / 共67页
第2页 / 共67页
第3页 / 共67页
第4页 / 共67页
第5页 / 共67页
第6页 / 共67页
第7页 / 共67页
第8页 / 共67页
第9页 / 共67页
第10页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
应用服务器应用服务器 1/66软件构件与中间件技术软件构件与中间件技术第二讲第二讲应应 用用 服服 务务 器器猜哈耻穷嗡矽驱炕络琵对癣鹏微拯驴修逝何害胀否剁镶渺辙侗垦牡虏又雨第二讲应用服务器第二讲应用服务器1应用服务器应用服务器 2/66软件构件与中间件技术软件构件与中间件技术人们必须人们必须 不断地不断地提取提取 软件的共性成份软件的共性成份屏蔽屏蔽 系统低层的复杂度系统低层的复杂度 从而从而 在高层保持复杂度的相对在高层保持复杂度的相对稳定稳定 兹跌箭饼梦贬君央肠努表钝涵婴报纺瞧义闰肯嘻哆碘兑巨愁遍尾貉什逮涨第二讲应用服务器第二讲应用服务器2应用服务器应用服务器 3/66软件构件与中间件技术软件构件与中间件技术内内 容容 一、动因一、动因二、产生基础二、产生基础三、结构与功能三、结构与功能四、现状与未来四、现状与未来僵擦殃带弘输糟叛匝享堪刻摹班眷狈迟易挂俱笼遗岗焉纽褒贸话藤杨紊剖第二讲应用服务器第二讲应用服务器3应用服务器应用服务器 4/66软件构件与中间件技术软件构件与中间件技术一、动因一、动因操作系统操作系统数据库管理系统数据库管理系统应用服务管理系统(应用服务器)应用服务管理系统(应用服务器)软件软件嫁袋船范衰晶尚米桌誓桌巾舍篓赋块拌鞠遣栏买叠泪盆报哥街龙技缴诗拔第二讲应用服务器第二讲应用服务器4应用服务器应用服务器 5/66软件构件与中间件技术软件构件与中间件技术初始状态:硬件(初始状态:硬件(ENIAC)如何提高算法适应性?如何提高算法适应性?分离出了程序分离出了程序(汇编汇编=)程序硬件硬件股蛙形屉蛀辙吵铸鲜略顶腑迹坏彭冬钨漱罗球遮悔瑶芯栓卯养谐肛茧肝寒第二讲应用服务器第二讲应用服务器5应用服务器应用服务器 6/66软件构件与中间件技术软件构件与中间件技术初始状态:硬件初始状态:硬件 + 程序程序程序的共性(稳定)成分:计算资源管理程序的共性(稳定)成分:计算资源管理操作系统操作系统(FMS=)应用程序应用程序产生了:产生了:分离出了:分离出了:软件硬件操作系统首掺洱阻秩垣噶历滇杯棕潦狡督尹锹疫筋赊圈称婿示忘用积搀盲第歧朽正第二讲应用服务器第二讲应用服务器6应用服务器应用服务器 7/66软件构件与中间件技术软件构件与中间件技术初始状态:硬件初始状态:硬件 + 操作系统操作系统 + 应用程序应用程序程序的共性(稳定)成分:数据管理程序的共性(稳定)成分:数据管理产生了:数据库管理系统产生了:数据库管理系统(IMS=)分离出了:应用软件分离出了:应用软件 操作系统 操作系统 数据存储文件 数据库管理系统 应用程序 颜涸白较昌必延息沙牢素稽督恕打谷马勃泊志彪渊仰纲延蹿禾几夯裤涌看第二讲应用服务器第二讲应用服务器7应用服务器应用服务器 8/66软件构件与中间件技术软件构件与中间件技术程序的共性(稳定)成分:网络资源管理程序的共性(稳定)成分:网络资源管理产生了:应用服务器产生了:应用服务器(TP Monitor=)分离出了:业务逻辑(构件)分离出了:业务逻辑(构件)初始状态:硬件初始状态:硬件 + 操作系统操作系统 + 数据库管理系统数据库管理系统 +应用软件应用软件挖怠冕质躬留说倒畅分诬二捻殃懈冷库降纬疮寝警扒匹惮褥殿陋庐眠驯三第二讲应用服务器第二讲应用服务器8应用服务器应用服务器 9/66软件构件与中间件技术软件构件与中间件技术二、产生基础二、产生基础(1)终端仿真)终端仿真/屏幕转换中间件屏幕转换中间件 用以实现用以实现 客户机图形用户接口客户机图形用户接口 与与 已有的字符接口方式的服务器应用程序的互操作已有的字符接口方式的服务器应用程序的互操作(2)数据访问中间件)数据访问中间件为了建立数据应用资源互操作的模式为了建立数据应用资源互操作的模式 对异构环境下的数据库实现联接或文件系统实现联接的中间件对异构环境下的数据库实现联接或文件系统实现联接的中间件(3)远程过程调用远程过程调用中间件中间件程序员方便地编写客户端应用程序程序员方便地编写客户端应用程序 调用位于远端服务器上的过程调用位于远端服务器上的过程1、中间件、中间件枯膝扭胁米亮问所撅俘畏拷彼览侧穿饿役潭菌毁抓仪棍檄砖好漠刮癌赏殿第二讲应用服务器第二讲应用服务器9应用服务器应用服务器 10/66软件构件与中间件技术软件构件与中间件技术(4)面向消息中间件)面向消息中间件用来用来屏蔽各种平台及屏蔽各种平台及协议协议之间的特性之间的特性进行相互通信进行相互通信实现应用程序之间的协同实现应用程序之间的协同(5)事务事务(交易)中间件(交易)中间件在分布、异构环境下在分布、异构环境下提供保证交易完整性和数据完整性的一种环境平台提供保证交易完整性和数据完整性的一种环境平台(6)对象中间件)对象中间件在分布、异构的网络计算环境中在分布、异构的网络计算环境中将各种分布对象有机地结合在一起将各种分布对象有机地结合在一起完成完成 系统的快速集成系统的快速集成实现实现 对象重用对象重用铝厄千弓梅税郝鳞肝器耍鸯裤慷腹柬掳切孤姐责娶寺郁迸爷猿瞪拿抿塔缘第二讲应用服务器第二讲应用服务器10应用服务器应用服务器 11/66软件构件与中间件技术软件构件与中间件技术2 2、网络软件总体结构、网络软件总体结构 OMG 的的 OMA微软微软 的的 DNASUN 的的 J2EEWhos SOA泽拴矽框叼梆李担邢奉堪院卑最彝宾张踌孰旦啊哀芳扳固背歇谚秩操盅总第二讲应用服务器第二讲应用服务器11应用服务器应用服务器 12/66软件构件与中间件技术软件构件与中间件技术(1)OMA 世界上最大的计算机工业联盟、非赢利性组织世界上最大的计算机工业联盟、非赢利性组织于于1989年年4月由月由8个公司发起个公司发起目前有目前有800多家成员多家成员 全职工作人员只有一个全职工作人员只有一个20人左右人左右自身不做标准制订和开发工作自身不做标准制订和开发工作仅提供一种组织和机制仅提供一种组织和机制支持支持OMG成员成员进行进行 交流、合作交流、合作制订制订 技术规范技术规范开发开发 符合标准的商用产品符合标准的商用产品两个重要的基石:两个重要的基石:面向对象方法面向对象方法商业可用性商业可用性OMG:蝎预涂荆精信碉崇督善里达瓶逊鸵迪傲恭奎主矗厌簧拳浇赁淤过皑虑毛伙第二讲应用服务器第二讲应用服务器12应用服务器应用服务器 13/66软件构件与中间件技术软件构件与中间件技术OMG的组织结构Board of Directors(BOD)Platform Technology Committee(PTC)Domain Technology Committee(DTC)Architecture Board(AB)Task Force(TF)Special Interest Groups(SIG)Task Force(TF)Task Force(TF)Special Interest Groups(SIG)Special Interest Groups(SIG)志侩牵颈姐黄叭努题陨澄惹垂步脑俐威厅表沤蘸急硷渍帕遂格挝它死支孰第二讲应用服务器第二讲应用服务器13应用服务器应用服务器 14/66软件构件与中间件技术软件构件与中间件技术OMG技术采纳过程:技术采纳过程:RFIRFPSpecificationSpecificationSpecificationeveryonePart of membersTF起草DTC或PTC发行TF起草AB评审DTC或PTC发行TF评估、推荐AB评审DTC或PTC批准BOD批准患省俗初囤庙肥澈惶席役萧苟骇党津茄英饵愈弘韶均脊尤残谎者藐翁饥嘻第二讲应用服务器第二讲应用服务器14应用服务器应用服务器 15/66软件构件与中间件技术软件构件与中间件技术总线总线计算机硬件中的模块及互联方式:计算机硬件中的模块及互联方式:很高屁辰祁缨壮沤寓枫殿迁堑呐干筛班煎梯屉艰仗闰思固偶效咽杯晨沏抄第二讲应用服务器第二讲应用服务器15应用服务器应用服务器 16/66软件构件与中间件技术软件构件与中间件技术Object Request BrokerObject ServicesApplication InterfacesDomain InterfacesCommon FacilitiesOMA:Object Management Architecture份簿禹腔寂磕蝇裸哦电勇龙羊素颇冠薯积忻朗夜浊怂气四峡屏诡釜垄叠眺第二讲应用服务器第二讲应用服务器16应用服务器应用服务器 17/66软件构件与中间件技术软件构件与中间件技术ORB:“Object interoperate bus”Object Request BrokerORB CoreORB CoreORB Core堕抬淹颖雁榆峻浩肩员泅簿撬毋优俭脓货臀炒泌灭沦碌学膛吃挤糖门滩凰第二讲应用服务器第二讲应用服务器17应用服务器应用服务器 18/66软件构件与中间件技术软件构件与中间件技术俐臣堂暑殊她来腰滓宇述晓韦房走募渐镣谋奶吏团牙行埔蜡妓蜗斧培妨邀第二讲应用服务器第二讲应用服务器18应用服务器应用服务器 19/66软件构件与中间件技术软件构件与中间件技术Services:“Abstractions for Classic System-Programming Functionality”Object Request BrokerTradingTradingEventsEventsSecuritySecurityNamingNamingLifecycleLifecycleTransTrans-actionsPersis-Persis-tencetence非誓蚊马比陵菲等羔翁宦罪胡号娠沪查肥耸统藏歹褒柬脂孪敲曙灵搭川返第二讲应用服务器第二讲应用服务器19应用服务器应用服务器 20/66软件构件与中间件技术软件构件与中间件技术Facilities:“High Level Services: Domain Specific and Generic”Object Request BrokerSystemSystemMgt.Mgt.FinanceFinanceComp.Comp.Doc.Doc.TelecomTelecomBus.Bus.ObjectObjectHealthHealth-care-careManuf.的颓封完终楞酣一伤姥筷箩疵蚌仅滁吏屋呼群苦扭助橇灶忿蔬蚜豫硷祟力第二讲应用服务器第二讲应用服务器20应用服务器应用服务器 21/66软件构件与中间件技术软件构件与中间件技术(2)DNA率幻嫉扮询点荷童相把躺肩睬偷请钦雇蒲蚀贬仙研努澄籍薄痒剑涤减庙钉第二讲应用服务器第二讲应用服务器21应用服务器应用服务器 22/66软件构件与中间件技术软件构件与中间件技术浦藐业淖删碳褥给几邮妥途涤揩袁俘弘整删泉商拘袱量寄嵌糟稽寻煽雅搜第二讲应用服务器第二讲应用服务器22应用服务器应用服务器 23/66软件构件与中间件技术软件构件与中间件技术Presentation Level村绊夜弧伸谢傅传处弦披舱命赐嘶焊橡客摆娄匙谦浴污惨戈钳织仕剪淀悸第二讲应用服务器第二讲应用服务器23应用服务器应用服务器 24/66软件构件与中间件技术软件构件与中间件技术DNA 提供多种表示服务提供多种表示服务开发者可以根据具体情况选择最佳方案开发者可以根据具体情况选择最佳方案HTMLScriptingDHTMLComponentsWin32 API以支持丰富的界面与客户环境以支持丰富的界面与客户环境从手持无线设备到高端工作站从手持无线设备到高端工作站旁拿演承清聋钧饰感腊参受佣兄恢展悍坡呐先龄夫獭镶酗塑刊沪域觅蜒涪第二讲应用服务器第二讲应用服务器24应用服务器应用服务器 25/66软件构件与中间件技术软件构件与中间件技术Business Logic Level斜态考钻獭搪浑镇连翁蛹要中萝硬趋谋惨歼恍佯耘柳为哲躲午囱假遏蚜沼第二讲应用服务器第二讲应用服务器25应用服务器应用服务器 26/66软件构件与中间件技术软件构件与中间件技术Component Services基于互操作模型基于互操作模型Component Object Model(COM) 增强分布处理功能增强分布处理功能Microsoft Transaction Server (MTS) 目前已发展为目前已发展为COM+通过降低为利用底层系统服务而编写的代码量通过降低为利用底层系统服务而编写的代码量使开发分布式应用系统更为使开发分布式应用系统更为快速快速容易容易廉价廉价漓熏推脐压去疚剩兔斯棒剁痹搞闷氏耘棕侈驹才酉胆殿援锻枢囊嫂膊佛蝗第二讲应用服务器第二讲应用服务器26应用服务器应用服务器 27/66软件构件与中间件技术软件构件与中间件技术COM+ 服务包括新的或增强的服务包括:服务包括新的或增强的服务包括:Bring your own transaction. COM 构件可以参与由非构件可以参与由非COM+ 事务处理环境管理的事务事务处理环境管理的事务 只要它支持只要它支持Transaction Internet Protocol (TIP)Load balancing. 基于构件的应用程序可以以客户透明的方式基于构件的应用程序可以以客户透明的方式在应用程序群中分布工作负载在应用程序群中分布工作负载In-memory database. 内存数据库是一个事务性数据库系统内存数据库是一个事务性数据库系统用以支持对数据的快速访问用以支持对数据的快速访问谦迭磨炸篆奋斑赛科下钩讯铀座遣镜此裕毡俭法醚皿凝锚详缠菲乎肠铲渺第二讲应用服务器第二讲应用服务器27应用服务器应用服务器 28/66软件构件与中间件技术软件构件与中间件技术Queued components. 异步执行在网络环境下是不可避免的异步执行在网络环境下是不可避免的队列可以对异步执行提供良好支持队列可以对异步执行提供良好支持Event notification. COM+ 事件是同时支持单播事件是同时支持单播/多播、发布多播、发布/订阅的事件机制订阅的事件机制允许多个客户允许多个客户“订阅订阅”由各种服务器由各种服务器“发布发布”的事件的事件Expanded security. 支持基于角色的安全与处理访问许可安全支持基于角色的安全与处理访问许可安全COM+ 增加了方法级安全增加了方法级安全Centralized administration. Component Services Explorer提供了一致的管理模型提供了一致的管理模型减少了部署、管理及监控减少了部署、管理及监控 n层的应用程序层的应用程序吸耪巫岸出动炭威政奈镭侗盒违补懈青脱禁铬痴坍危所氮川痢坎新桓悬俄第二讲应用服务器第二讲应用服务器28应用服务器应用服务器 29/66软件构件与中间件技术软件构件与中间件技术Messaging ServicesMicrosoft Message Queue Server 提供提供松耦合、可靠的通讯服务松耦合、可靠的通讯服务通过实现通过实现 push 风格的商务事件方便了应用系统的集成风格的商务事件方便了应用系统的集成在不可靠、代价低的网络上建立起可靠的应用系统在不可靠、代价低的网络上建立起可靠的应用系统Microsoft Message Queue Server 还提供了还提供了与其它消息队列产品的无缝连接与其它消息队列产品的无缝连接例如:例如:IBMs MQSeries等等傣皮欠庶污鲤英婪杨渣典凶辉她庶倡栗彬螺仅廉柬仍检芝馈脖逝除韦培茧第二讲应用服务器第二讲应用服务器29应用服务器应用服务器 30/66软件构件与中间件技术软件构件与中间件技术Web Application ServicesInternet Information Server (IIS) 可用于可用于开发基于开发基于Web的商务应用系统的商务应用系统这样的系统便于扩展、便于部署这样的系统便于扩展、便于部署作为作为IIS技术之一的技术之一的Active Server Pages(ASP) 具有具有语言中立语言中立编译省缺编译省缺 的特点的特点是服务器端脚本环境是服务器端脚本环境用于创建、运行动态且交互的用于创建、运行动态且交互的Web服务器应用程序服务器应用程序利用利用ASP脚本及其它协调构件构造的应用程序脚本及其它协调构件构造的应用程序可以与现有的系统、应用程序及数据协同工作可以与现有的系统、应用程序及数据协同工作偶笼籽尾漫拧愧皱辊臂屁倍馆衔泳鹃蜒嚎纯星环浓兽拽埃陷舍固沟慰渭话第二讲应用服务器第二讲应用服务器30应用服务器应用服务器 31/66软件构件与中间件技术软件构件与中间件技术Data Level如孵娃洒槽骄披谱抒埋腻诞红掺葡绳彰迈猫铰荔疲绝曰杀圣猩术趣腮清咀第二讲应用服务器第二讲应用服务器31应用服务器应用服务器 32/66软件构件与中间件技术软件构件与中间件技术Universal Data Access 提供对各种信息资源的高性能访问提供对各种信息资源的高性能访问包括关系、非关系数据包括关系、非关系数据提供独立于工具与语言的编程接口提供独立于工具与语言的编程接口Universal Data Access 基于开放的工业规范基于开放的工业规范得到了工业界及数据库厂商的广泛支持得到了工业界及数据库厂商的广泛支持至静泥池揩萝丢狭与古奄缎陶皇屡相宁病奇吸肠抒注脱够碴命兔夫蔓哭怠第二讲应用服务器第二讲应用服务器32应用服务器应用服务器 33/66软件构件与中间件技术软件构件与中间件技术DNA中基于中基于Universal Data Access的框架包含两层:的框架包含两层:在系统层:在系统层:OLE DB 定义了一个基于构件的体系结构定义了一个基于构件的体系结构封装了各种数据库管理系统服务封装了各种数据库管理系统服务OLE DB 不对数据源进行约束不对数据源进行约束在应用层:在应用层:ActiveX Data Objects (ADO) 提供了高层接口提供了高层接口使开发者可以从任何编程语言访问数据使开发者可以从任何编程语言访问数据在每一层:在每一层:eXtensible Markup Language (XML)使开发者使开发者可以在应用程序客户之间进行可以在应用程序客户之间进行描述、交付、交换结构化数据描述、交付、交换结构化数据XML 也可以在服务器之间进行结构化数据的传送也可以在服务器之间进行结构化数据的传送疥窗标袭肮奸胀赔需繁浸吩贯砚喉侨赃敬宰绿闽味庶零借弟蔓柿钦悦知哟第二讲应用服务器第二讲应用服务器33应用服务器应用服务器 34/66软件构件与中间件技术软件构件与中间件技术(3) J2EElJava 2 Platform Enterprise Edition(1.2)lJAVA: Language Runtime(virtual machine)Platform :J2SE J2EE J2ME 背景背景梭液晨卸诲巳郭踊宫拘戍助祝壤湿呐痹脐窗娶著藉桓崔塑达兔奇怎户烫撇第二讲应用服务器第二讲应用服务器34应用服务器应用服务器 35/66软件构件与中间件技术软件构件与中间件技术nJavaTM 2 Platform, Standard Edition (J2SETM) J2SE 为构造并部署网络为核心的企业应用系统为构造并部署网络为核心的企业应用系统提供一个完整的、安全的基础,其范围从提供一个完整的、安全的基础,其范围从PC桌面到桌面到工作组服务器工作组服务器。 J2SE 包括:包括:Java 2 (SDK), Standard Edition and Java 2 Runtime Environment, Standard Edition附苦开订牧沛嵌随扎胜纵蛇组业佑幌警狞沂鹤拢计许碘冈惰醒冈叔俗郭庚第二讲应用服务器第二讲应用服务器35应用服务器应用服务器 36/66软件构件与中间件技术软件构件与中间件技术n JavaTM 2 Platform, Enterprise Edition (J2EETM) J2EE是是Java 2平台的一个完整版本,将业务紧平台的一个完整版本,将业务紧要(要(Mission Critical)的企业应用系统推向任何)的企业应用系统推向任何 web 浏览器。浏览器。 J2EE将将SUN公司的多种技术集成到一个体系结公司的多种技术集成到一个体系结构中,并提供了一种应用程序编程模型、兼容性测试构中,并提供了一种应用程序编程模型、兼容性测试套件,以降低开发网络软件的复杂性与代价。套件,以降低开发网络软件的复杂性与代价。饱臼蹄油栓汽靖巡时袄居笋蛀辑梧揭欣介骡中梳蹭辗啡酉鸳阵妊拘描跨蹋第二讲应用服务器第二讲应用服务器36应用服务器应用服务器 37/66软件构件与中间件技术软件构件与中间件技术nJavaTM 2 Platform, Micro Edition (J2METM) J2ME是端到端(是端到端(end-to-end)的)的Java 技术,适于技术,适于正在增长的消费类与嵌入式市场。正在增长的消费类与嵌入式市场。 J2ME 是一个被高度优化的运行环境,以下列消费类是一个被高度优化的运行环境,以下列消费类产品为目标:产品为目标:pagerscellular phonesscreenphonesdigital set-top boxes 以及以及 car navigation systems亭耽缨忘感梳曼糟熙购魏蛆惋历傅戴驻遵幢捻矽疑各迸顷淄檬和脸户砷锡第二讲应用服务器第二讲应用服务器37应用服务器应用服务器 38/66软件构件与中间件技术软件构件与中间件技术总体结构总体结构挎躺住蓉可念辣挽悉旧岗烙窝脉铀二敷蓖岗控菲揣帐埠峦悔览坞急释裴跳第二讲应用服务器第二讲应用服务器38应用服务器应用服务器 39/66软件构件与中间件技术软件构件与中间件技术J2EE 支持支持4类构件:类构件:Application clientsAppletsServlets and JSP pagesEnterprise JavaBeans包含的构件包含的构件盒捎蹈潜砷侯寐强麓燎墩丘捶钉征参瞬猩幸档营踪铲见抢崩辜毋针栗吃逛第二讲应用服务器第二讲应用服务器39应用服务器应用服务器 40/66软件构件与中间件技术软件构件与中间件技术容器为应用构件提供了运行态支持容器为应用构件提供了运行态支持在在J2EE服务与应用构件之间增加一个服务器,使得容器服务与应用构件之间增加一个服务器,使得容器可以透明地利用构件的部署信息(可以透明地利用构件的部署信息( deployment descriptors )获取)获取J2EE服务提供的功能。例如:事务管服务提供的功能。例如:事务管理、安全检查、资源缓冲、以及状态管理等。理、安全检查、资源缓冲、以及状态管理等。一个典型的一个典型的 J2EE 产品为每一类的构件提供一种容器:产品为每一类的构件提供一种容器:application client container,applet container,web component container,以及以及 enterprise bean container。构件容器构件容器涕导暖砒驳脓蛆伪粘纶渝骨联摹炊道夜越小郎歇海吴谍胺拄驰瑶配沂裳叙第二讲应用服务器第二讲应用服务器40应用服务器应用服务器 41/66软件构件与中间件技术软件构件与中间件技术 一个资源管理驱动器(驱动器)是一个系统级软件构一个资源管理驱动器(驱动器)是一个系统级软件构件实现与外部资源管理器的网络连接。件实现与外部资源管理器的网络连接。 一个驱动器能够扩展一个驱动器能够扩展J2EE平台的功能平台的功能途径为:途径为:实现实现J2EE的一个标准服务接口的一个标准服务接口 API (例如例如 JDBC driver)为一个外部应用系统的连接器(为一个外部应用系统的连接器( connector )定义并实现一个资源管理器驱动器。)定义并实现一个资源管理器驱动器。资源管理器驱动器资源管理器驱动器巢房蓖绝希须麓涉紫最环垢流惟蝶霞磺罩渺终樱揣肖趴超卢批起助荧撕项第二讲应用服务器第二讲应用服务器41应用服务器应用服务器 42/66软件构件与中间件技术软件构件与中间件技术J2EE 平台包含可以通过平台包含可以通过JDBC API访问的数据库,用访问的数据库,用于存储业务数据。于存储业务数据。数据库可以从数据库可以从 web components, enterprise beans, 以及以及 application client components 访问访问 但不可以从但不可以从 applets访问访问数据库数据库寡摩户贡粕追当疗克阿棉涂雪扔责屹够呀耐雹蛹偏志剃南谭鸿阶纬覆零轰第二讲应用服务器第二讲应用服务器42应用服务器应用服务器 43/66软件构件与中间件技术软件构件与中间件技术J2EE 标准服务标准服务HTTPHTTPSJTARMI-IIOPJavaIDLJDBCJMSJNDIJavaMailJAFConnectorJAXPJAAS婆膀浆喻馈党耻疽筐扒第轿指啪厚票别胖硷疗褥压森矛燕匈笋曲毖冤侵稍第二讲应用服务器第二讲应用服务器43应用服务器应用服务器 44/66软件构件与中间件技术软件构件与中间件技术HTTPHTTP client-side API 由由 java.net package 定义。定义。 HTTP server-side API 由由 servlet and JSP 接口定义。接口定义。HTTPS支持支持HTTP的上述接口同样支持基于的上述接口同样支持基于SSL协议的协议的HTTP。聋陡畴冈磊峡烯翌稳秘阐帽贺烹粤啸痘羞侄堡赂辅补尔施桨肠梦漫淄喝圈第二讲应用服务器第二讲应用服务器44应用服务器应用服务器 45/66软件构件与中间件技术软件构件与中间件技术nJava Transaction API (JTA) Java Transaction API 包括两部分包括两部分: 应用级接口,容器与应用构件用它来声名事务边界应用级接口,容器与应用构件用它来声名事务边界 J2EE SPI级接口,事务管理器与资源管理器之间的接口级接口,事务管理器与资源管理器之间的接口 SPI:service provider interface湘断翰乙克奠吻逮乐碉稗知侠符挂韦僧豢翅送轨宪葬苔誉斥浑杯围跳尊获第二讲应用服务器第二讲应用服务器45应用服务器应用服务器 46/66软件构件与中间件技术软件构件与中间件技术nRMI-IIOP 组成组成RMI-IIOP 的的APIs 包括:包括: 独立于底层协议的独立于底层协议的 RMI风格的编程接口风格的编程接口 上述上述API的实现,支持的实现,支持 J2SE RMI protocol (JRMP) 及及CORBA IIOP J2EE 应用系统可以使用应用系统可以使用RMI-IIOP(在(在IIOP协议的支持下)协议的支持下)访问与访问与RMI编程约束兼容的编程约束兼容的 CORBA services拴汾甸枣愚却永藩犬卜璃惋疮脾卒美镊诸墨斋陈熊凤荷淤拣笑蕾嚼狞铬维第二讲应用服务器第二讲应用服务器46应用服务器应用服务器 47/66软件构件与中间件技术软件构件与中间件技术JavaIDL JavaIDL 使得使得J2EE 应用构件可以利用应用构件可以利用IIOP调用外部的调用外部的CORBA 对象对象 这些这些 CORBA 对象可以用任何语言编写,运行在对象可以用任何语言编写,运行在 J2EE 之外之外 J2EE 应用程序可以使用应用程序可以使用JavaIDL,角色为,角色为CORBA services的客户的客户 泛他柯窍跟定宫晒原茨淋乃牧帽塞硬肉流导庇绊沈永径烁博夏嗽胃陇仪痈第二讲应用服务器第二讲应用服务器47应用服务器应用服务器 48/66软件构件与中间件技术软件构件与中间件技术JDBC JDBC API 是与数据库连接的是与数据库连接的 APInJava Message Service (JMS)JMS是支持可靠的点对点(是支持可靠的点对点( point-to-point )与与发布发布-订阅(订阅(publish-subscribe)消息模型)消息模型 的标准的标准API颤迷叔蹿匙聚踪瓢追妹屿蓝磅鄂选守张绪异汽邓俺哎片思臂找靖乒砰频惜第二讲应用服务器第二讲应用服务器48应用服务器应用服务器 49/66软件构件与中间件技术软件构件与中间件技术nJNDIJNDI API 是命名与目录访问的标准接口,用于定位构件是命名与目录访问的标准接口,用于定位构件包含两部分:包含两部分: 应用构件访问命名与目录服务时使用的应用级接口应用构件访问命名与目录服务时使用的应用级接口(API) 提供增加命名与目录服务时使用的服务提供接口提供增加命名与目录服务时使用的服务提供接口(SPI)躁粟衍疾艘顾写裹饯冈芝势闭截魂况束憾菌沪竹云祸撩闭烈岸大醇枪讳憎第二讲应用服务器第二讲应用服务器49应用服务器应用服务器 50/66软件构件与中间件技术软件构件与中间件技术nJavaMail 许多许多Internet 应用程序需要发送应用程序需要发送email的能力,因此的能力,因此J2EE 平平台包含台包含 JavaMail API 及及JavaMail SPI,使得应用构件能够发,使得应用构件能够发送送Internet mail。nJavaBeans Activation Framework (JAF) JavaMail API 所使用的一种功能所使用的一种功能悼向铡饶童偏倒船袋其今由衅处荆胃铡蝴醋粒咋向漱勿诽稻冻苹亮庇诱颁第二讲应用服务器第二讲应用服务器50应用服务器应用服务器 51/66软件构件与中间件技术软件构件与中间件技术Java API for XML Parsing (JAXP)JAXP 为工业标准为工业标准 SAX 与与 DOM 提供支持提供支持以以 parsing XML 文档文档SAX:The Simple API for XMLevent-based APIDOM:Document Object Model tree-based API 靠冬爱籽庞位并晤珊姻铀崇咙拈捧蹬拨美衍绚纶乌粱溉频盂拴养溉耍鹊拜第二讲应用服务器第二讲应用服务器51应用服务器应用服务器 52/66软件构件与中间件技术软件构件与中间件技术J2EE Connector Architecture Connector architecture 是将访问是将访问EIS(Enterprise Information Systems )的资源适配器插装到任何的资源适配器插装到任何J2EE产品中的产品中的 J2EE SPI Connector architecture 定义了定义了J2EE 服务器与资源适配器之服务器与资源适配器之间的系统级合约(间的系统级合约(Contract) 包括:包括:J2EE与外部资源的连接管理合约与外部资源的连接管理合约事务管理器与事务管理器与EIS的事务管理合约的事务管理合约访问访问EIS的安全管理合约的安全管理合约滥埂攀注令梁宋籍为妇把帖冈辞枕婪乾弗泊迎蛤否芍规吃貉扳婶屎晓钾弛第二讲应用服务器第二讲应用服务器52应用服务器应用服务器 53/66软件构件与中间件技术软件构件与中间件技术Java Authentication and Authorization Service (JAAS) JAAS 提供用户认证及授权服务提供用户认证及授权服务 JAAS 提供了提供了 PAM (Pluggable Authentication Module) 框架标准的框架标准的Java版实现版实现 并扩展了支持基于用户授权的访问控制结构并扩展了支持基于用户授权的访问控制结构来收缓持抚朝拣驾荒寂契铬木筷吏熊献辽俞嘛骡贱韧祁之所烩惭祖阐咏独第二讲应用服务器第二讲应用服务器53应用服务器应用服务器 54/66软件构件与中间件技术软件构件与中间件技术(4) SOAService Oriented Architecture: 面向服务的架构面向服务的架构 Gartner 1996 年最早提出年最早提出应用程序是通过组合一些松耦合并且具有统一接口定义应用程序是通过组合一些松耦合并且具有统一接口定义方式的服务而构建起来的方式的服务而构建起来的 更加关注业务流程更加关注业务流程而不仅仅是底层的而不仅仅是底层的IT基础结构基础结构松散耦合、集成之星松散耦合、集成之星从购买软件到订阅、定制服务的转变!从购买软件到订阅、定制服务的转变!徐游披沫邑日拓伎更乃肌伙咸向倦仕井校纯捂泼环脊淋稽品猪央摩栓忿夕第二讲应用服务器第二讲应用服务器54应用服务器应用服务器 55/66软件构件与中间件技术软件构件与中间件技术目前存在多种被广泛接受的体系:目前存在多种被广泛接受的体系:OMA、DNA、J2EE、SOA不同的应用服务器支持不同的体系不同的应用服务器支持不同的体系尽管存在一些不同:尽管存在一些不同:(1)概念不一致)概念不一致(2)风格不一致)风格不一致(3)服务不一致)服务不一致(4)应用领域不一致)应用领域不一致但它们在功能、结构上存在较大相似之处但它们在功能、结构上存在较大相似之处三、应用服务器的结构与功能三、应用服务器的结构与功能虽摸喻悯郑砖骸知闺赦邵侵苟诬怂计迸媒灾兜射熏崖咽镀捆坯渐调无娥敢第二讲应用服务器第二讲应用服务器55应用服务器应用服务器 56/66软件构件与中间件技术软件构件与中间件技术应用服务器的纵向位置应用服务器的纵向位置 操作系统操作系统 应用应用 应用服务器应用服务器 特豺胚粪热缠纤汪靠陆备耀踩丁行搽慕婪稽孕告莲仪横夫侯旷锰旺蝎谋耀第二讲应用服务器第二讲应用服务器56应用服务器应用服务器 57/66软件构件与中间件技术软件构件与中间件技术应用服务器的横向位置应用服务器的横向位置 应用服务器 数据库服务器 因特网 浏览器 浏览器 浏览器 应应用用层层 系系统统层层 显示代码 逻辑代码 数据 固挎眶挖晕振呛唬驮押夫建镍卢尚寨劈坍筹璃卡膘纬凿茫噶麦的醇柑鳞着第二讲应用服务器第二讲应用服务器57应用服务器应用服务器 58/66软件构件与中间件技术软件构件与中间件技术应用服务器的功能应用服务器的功能提供构件运行环境提供构件运行环境提供互操作机制提供互操作机制提供公共服务提供公共服务 砰架骗睁撮荧言伎版少回诉芽膘塞砷篡骸踊堵辰广阿耪尊菱茁代侈隙喘化第二讲应用服务器第二讲应用服务器58应用服务器应用服务器 59/66软件构件与中间件技术软件构件与中间件技术 构件运行环境构件运行环境应用服务器应用服务器一般通过一般通过构件容器构件容器为为构件构件提供基本的运行环境提供基本的运行环境具体功能包括:具体功能包括:管理管理构件构件的生命周期的生命周期管理构件的实例管理构件的实例管理构件的元信息等管理构件的元信息等瞻纲匣铬戈愈胎挠爱悄溉糜迹摩舍砌欠集拆隐梧北阵程女常财蜒蔬荤席貉第二讲应用服务器第二讲应用服务器59应用服务器应用服务器 60/66软件构件与中间件技术软件构件与中间件技术 互操作机制互操作机制这是针对分布性、异构性所提供的功能这是针对分布性、异构性所提供的功能所有的所有的应用服务器应用服务器皆提供了很强的高层通信服务皆提供了很强的高层通信服务以屏蔽以屏蔽节点的物理特性节点的物理特性以及各节点在处理器、操作系统等方面的异构性以及各节点在处理器、操作系统等方面的异构性具体功能包括:具体功能包括:业务层与表示层之间的通信业务层与表示层之间的通信业务层与数据层(含遗留系统)之间的通信业务层与数据层(含遗留系统)之间的通信业务层内部公共服务与应用层之间的通信业务层内部公共服务与应用层之间的通信以及业务层内部构件之间的通信以及业务层内部构件之间的通信等等等等但按唤伶腔凝君暑贤袖涅襄慕远明蝴皑契袄横裸翠耶仟作论甲沙郊烃康罐第二讲应用服务器第二讲应用服务器60应用服务器应用服务器 61/66软件构件与中间件技术软件构件与中间件技术 公共服务公共服务应用服务器应用服务器提供的主要提供的主要公共服务公共服务包括:包括:查找服务查找服务事务服务事务服务安全服务安全服务以及:以及:消息服务、集群服务、目录服务、日志服务、邮件服务等消息服务、集群服务、目录服务、日志服务、邮件服务等对于面向领域的对于面向领域的应用服务器应用服务器还可以提供更多的与领域业务密切相关的领域还可以提供更多的与领域业务密切相关的领域公共服务公共服务霸缀篱惺脯喉薛颐隧挂萝扇聊沏珊环滤丝毒说怠莱柬竞亮蛔咒放哉绚斧轩第二讲应用服务器第二讲应用服务器61应用服务器应用服务器 62/66软件构件与中间件技术软件构件与中间件技术应用服务器的结构应用服务器的结构名空间名空间管理管理事务事务管理管理安全安全管理管理数据数据访问访问Web访问访问构件管理器负载负载管理管理事件事件管理管理业务逻辑操作系统竞老蔽乔利郴墟馆锻轩狗磊喧睦鹅驻揖呜卒摄获廊写绳瘫眨诀荧异拴追痕第二讲应用服务器第二讲应用服务器62应用服务器应用服务器 63/66软件构件与中间件技术软件构件与中间件技术构件容器:构件容器:公共服务:公共服务:构件构件:芝佬综扇勋誓妖匈夹牲饮塌凛坛苍蹋请凌檄哎叛犯合霍专贤燃巍咎擦账郊第二讲应用服务器第二讲应用服务器63应用服务器应用服务器 64/66软件构件与中间件技术软件构件与中间件技术四、应用服务器的现状与未来四、应用服务器的现状与未来根据开发组织的背景,可以将现有的根据开发组织的背景,可以将现有的应用服务器应用服务器产品进行如下划分:产品进行如下划分: 中间件厂商开发的产品中间件厂商开发的产品例如:例如:BEABEA公司开发的公司开发的WebLogicWebLogicIONAIONA公司开发的公司开发的iPortal ApplicationServeriPortal ApplicationServer等等数据库厂商开发的产品数据库厂商开发的产品例如:例如:OracleOracle公司开发的公司开发的 Oracle 9i Application Server Oracle 9i Application Server等等操作系统厂商开发的产品操作系统厂商开发的产品例如:例如:IBMIBM公司开发的公司开发的WebsphereWebsphereSUNSUN开发的开发的SUN ONE Application ServerSUN ONE Application ServerMicrosoftMicrosoft公司开发的以公司开发的以MTSMTS为核心的系统为核心的系统开发工具厂商开发的产品开发工具厂商开发的产品例如:例如:InpriseInprise公司开发的公司开发的Borland Application ServerBorland Application Server等等现状:现状:眩矫疽改储刻甘篡凹换咒虹航蕾眠挨吠净漫增调满戒诽链蚌延肢呜肠促蕴第二讲应用服务器第二讲应用服务器64应用服务器应用服务器 65/66软件构件与中间件技术软件构件与中间件技术其它大量由独立开发组织完成的产品其它大量由独立开发组织完成的产品例如:例如:JBOSSJBOSS组织开发的组织开发的JbossJbossOpenEJBOpenEJB组织开发的组织开发的OpenEjbOpenEjbObjectWebObjectWeb开开发的的JonasJonasIronflare ABIronflare AB开发的开发的OrionOrionMacromediaMacromedia开发的开发的JRUN JRUN 等等等等国内在国内在应用服务器应用服务器的研究与开发上也取得了显著的进展的研究与开发上也取得了显著的进展国家国家863计划支持了若干与应用服务器密切相关的项目计划支持了若干与应用服务器密切相关的项目北京大学自行开发的北京大学自行开发的PKUAS在支持在线演化、支持多互操作协议等方面具有明显特色在支持在线演化、支持多互操作协议等方面具有明显特色金蝶公司发布了金蝶公司发布了Apusic东方通公司发布了东方通公司发布了TongWeb 等等等等卓绘诧盯棵郸壕勒代逗色皋墓捏羽杏啊铸潦口病耐亏宜队债淋恤帝鬼蓟丛第二讲应用服务器第二讲应用服务器65应用服务器应用服务器 66/66软件构件与中间件技术软件构件与中间件技术未来:未来:尽管尽管应用服务器应用服务器处于不断发展之中处于不断发展之中与应用软件相比它仍然是相对稳定的与应用软件相比它仍然是相对稳定的这是系统软件所具有的一般特性这是系统软件所具有的一般特性尽管新技术、新需求令人应接不暇尽管新技术、新需求令人应接不暇但几乎所有的系统都需要但几乎所有的系统都需要系统软件系统软件的支持的支持新技术的出现新技术的出现 会对系统软件提出新的需求会对系统软件提出新的需求 并进行适当的扩展、调整并进行适当的扩展、调整但这些变化不会改变系统软件的基本功能但这些变化不会改变系统软件的基本功能新技术、新需求的出现不会替代新技术、新需求的出现不会替代应用服务器应用服务器 不仅如此,它们的实现通常需要不仅如此,它们的实现通常需要应用服务器应用服务器的支持的支持瀑备旧瘁圃港擎贺捆搪赃衬阀秧缸魂狱躁淤虫粮酋脸磺据拦氰婶霓不墙谬第二讲应用服务器第二讲应用服务器66应用服务器应用服务器 67/66软件构件与中间件技术软件构件与中间件技术问问 题题 为什么需要应用服务器?为什么需要应用服务器? 应用服务器有哪些诞生基础?应用服务器有哪些诞生基础? 应用服务器具有什么功能?应用服务器具有什么功能? 应用服务器具有什么结构?应用服务器具有什么结构? 紊煽漾号旦壳积乎纷到夕汪姐肄淘政郎砷孜亲羡亚序义进杀缓殊绥赚驰速第二讲应用服务器第二讲应用服务器67
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号