软件体系结构-13_Emerging_trends_on_Software_Architecture_第1页
软件体系结构-13_Emerging_trends_on_Software_Architecture_第2页
软件体系结构-13_Emerging_trends_on_Software_Architecture_第3页
软件体系结构-13_Emerging_trends_on_Software_Architecture_第4页
软件体系结构-13_Emerging_trends_on_Software_Architecture_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,软件体系结构及应用,软件体系结构及应用,新兴软件体系结构风格、方法与技术(I),.,新兴的软件体系结构风格、方法与技术(I),主要内容,点对点(P2P)网格(grid)Web2.0,.,软件体系结构及应用,“点对点”体系结构风格,Peer-to-Peer(P2P),.,新兴的软件体系结构风格、方法与技术(I),传统的Client-Server架构,.,新兴的软件体系结构风格、方法与技术(I),Peer-to-Peer(P2P)架构,.,新兴的软件体系结构风格、方法与技术(I)二者的对比是很明显的,Client-Server,Peer-to-Peer,.,新兴的软件体系结构风格、方法与技术(I),P2P的定义,P2P架构主要依赖于各个参与者自身的计算能力与带宽资源,而不是仅仅依赖于数目较少的几个服务器。各参与者之间形成了C/S体系结构,Purepeer-to-peer(完全的点对点);Hybridpeer-to-peer(混合式的点对点)。,.,新兴的软件体系结构风格、方法与技术(I),Purepeer-to-peer(完全的点对点),完全的P2P:,P2P中不存在客户机或服务器的概念,各节点均可充当C/S的角色),不存在中心服务器来管理整个网络,也不存在中心路由器,.,新兴的软件体系结构风格、方法与技术(I),AnexampleofpureP2P:Gnutella,Gnutella:用来进行P2P文件交换的文件共享网络,文件查询请求在网络上广播,查询结果返回给最初发送请求的成员),Ping/Pong协议被用来发现网络上的成员,.,新兴的软件体系结构风格、方法与技术(I),Gnutella:howitworks,.,新兴的软件体系结构风格、方法与技术(I),Gnutellaprotocol,采用一种“查询泛滥”协议,ping:查询网路中的主机(Areyouthere?)pong:回应ping(Yes,Iamhere.),query:发送查询文件请求(Iamlookingforx.)queryhit:回应请求(“Op,Ihavethefilex!”),get/push:提供文件给请求者(transferthefilex),缺点:当文件较少时,造成网络通讯的指数级增长,.,新兴的软件体系结构风格、方法与技术(I),混合式的点对点,混合P2P,具有一个中心服务器,保存各个成员的信息,并对查询给出响应,各成员负责提供资源,并将这些共享资源的信息提供给中心服务器),路由终端被用来寻址,以找到共享资源的绝对地址,.,17新兴的软件体系结构风格、方法与技术(I),Hybridpeer-to-peer,.,17新兴的软件体系结构风格、方法与技术(I)AnexampleofhybridP2P:NapsterNapster在线音乐服务第一个采用P2P结构的mp3共享服务,2002年,因为违背版权法而被关闭),NapsterAlegendaryicon,.,17新兴的软件体系结构风格、方法与技术(I),Napster:Howitworks,.,软件体系结构及应用,网格,Grid,.,新兴的软件体系结构风格、方法与技术(I),GridComputing(网格计算),网格计算:一种计算模型,通过将多台分布在网络上的计算机形成一个虚拟机,提供强大的、并行的计算能力,.,新兴的软件体系结构风格、方法与技术(I),Grid的简要示意图,.,新兴的软件体系结构风格、方法与技术(I),网格计算,解决大规模的计算问题,将大数据集分解为若干个小的数据集,多台计算机进行并行的计算,Grid为诸多挑战性的问题提供了解决途径,蛋白质折叠,经济与金融建模地震模拟,气候/天气建模天体搜索,.,1,1,新兴的软件体系结构风格、方法与技术(I)Grid的工作过程,LotofPCs23Localclusterserver,LotofPCs23Localclusterserver,4,MainclusterServer,4,1,4,1,4,4,Localclusterserver,Databasefarm,Localclusterserver,2,3,2,3,LotofPCs,LotofPCs,.,新兴的软件体系结构风格、方法与技术(I),Grid,使用开放的标准与协议,利用分布在Internet上的大量异构的计算资源,并行的/分布式的系统对资源的动态共享、选择、聚合,基于资源的可提供性、能力、性能、成本、用户对服务质量的需求,.,新兴的软件体系结构风格、方法与技术(I),中国教育科研网格(ChinaGrid),目的:,图像处理,海量信息处理计算流体力学生物信息学,大学课程在线,.,软件体系结构及应用,Web2.0,.,AJAX,Search,REST,RubyOnRails,Mashup,Wiki,Blog,ATOM,RIA,P2P,JSON,Tag,RSS,MicroFormat,XUL,草根,SocialNetwork,新兴的软件体系结构风格、方法与技术(I)你对这些词熟悉吗?,AJAXMashup,SearchWiki,RESTBlog,RubyOnRailsATOM,RIAMicroFormat,P2P,JSONXUL,草根,Tag,RSSSocialNetwork,.,新兴的软件体系结构风格、方法与技术(I),Web1.0,Web1.0:单纯通过网络浏览器浏览html网页,通过Web,互联网上的资源可以在一个网页里比较直观的表示出来;资源之间可以在网页上以超链接的形式链来链去;,在Web1.0上做出巨大贡献的公司:Netscape、Yahoo和Google;,Web1.0被看作是“以数据为核心”的网络。,.,新兴的软件体系结构风格、方法与技术(I),语义网(SemanticsWeb),互联网上的内容,机器不能理解;语义网(SemanticsWeb):,在制作网页时,都用一种统一的语义,将网页里的内容表述成计算机可以理,解的格式。,这样,整个互联网就成了一个结构严谨的知识库。,但是,指望要网页的制作者提供额外的信息去让机器理解一个网页,太难,这违反了人们“能偷懒就偷懒”的本性;,.,新兴的软件体系结构风格、方法与技术(I),Google的做法,GooglePageRank:,网络爬虫(WebCrawler)无需理解从Internet上抓取来的网页的具体语义;将网页之间互相链接(Link)的关系,用来做结果排序的一个依据,变相利用,了网页制作者的判断力;,PageRankuseslinksasvotes,这种技术使得Google成为了Web1.0时代最成功的互联网公司。,.,新兴的软件体系结构风格、方法与技术(I),Web2.0,Web的下一步,是要让所有的人都忙起来,全民织网,然后用软件、机器的力量使这些信息更容易被需要的人找到、浏览和使用。,WEB2.0是“以人为中心”的网络。,.,AJAX,Search,REST,RubyOnRails,Mashup,Wiki,Blog,ATOM,RIA,P2P,JSON,Tag,RSS,MicroFormat,XUL,草根,SocialNetwork,新兴的软件体系结构风格、方法与技术(I)回到最初的图,AJAXMashup,SearchWiki,RESTBlog,RubyOnRailsATOM,RIAMicroFormat,P2P,JSONXUL,草根,Tag,RSSSocialNetwork,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的典型代表(1),Blog:个人网络日志,Wiki:一种多人协作的写作工具。一个Wiki站点可以有多人(甚至任何访问者)维护,每个人都可以发表自己的意见,或者对共同的主题进行扩展或者探讨;,SocialNetwork:社会性网络软件,依据六度理论,以认识朋友的朋友为基础,扩展自己的“社交圈”;,RSS(RichSiteSummary):用来在站点之间/站点-个人之间共享内容的一种技术,对Web数据的组织、聚合、推式传送:发布-订阅模式,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的典型代表(2),RIA(RichInternetApplication),使得Web页面程序具有与传统桌面程序同等的效果;,将部分处理功能从服务器端转移到客户端的浏览器内进行;改善用户体验;,例如AdobeFlashandFlex:浏览器可向服务器请求对网页内某一部分内容,的更新,而不是要对网页所有内容进行更新。,Mashup,使用来自多个开发数据资的内容(例如Amazon,eBay,GoogleMaps,WindowsLive,GPS,Wikipedia),重新组织在一起,形成一种新的服务并向外提供。,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的典型代表(3),REST(RepresentationalStateTransfer),将Web上所有网页都看作资源并具有URI,用户通过超链接进行的操作被看,作是状态的转移;,提供了一种使用HTTP的get/post/put/delete对Web上的数据和资源进行访问,与操作的手段。,Ajax(AsynchronousJavaScriptandXML),通过空闲时在浏览器与服务器之间交换少量的数据而使用户感觉在访问网页时速度更快。当用户作出改变时,无需重新装载网页,从而提高了网页的交互性、速度与可用性。,AJAX不是一项单独的技术,而是XHTML、CSS、DOM、JavaScript等技术,的“总和”。,例如:Gmail,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的典型代表(4),RubyOnRails(RoR),Ruby是一门免费的、简单的、直观的、可扩展的、可移植的、解释的脚本,语言,用于快速而简单的面向对象编程;,Rails是用Ruby编写的一款MVC-based、OpenSource的web,framework,能够自动化大部分常见类型的Web应用程序的创建,目的是使用更简单更少的代码编写程序;,原则:Dontrepeatyourself(DRY),ConventionoverconfigurationATOM,用作webfeeds的XML语言;,基于HTTP的、用以同步、更新和打包web资源的一种协议;与RSS的目标相似。,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的典型代表(5),Tag,内容创建者(如blogger)自行对内容进行标注,以便他人的搜索;JSON(JavaScriptObjectNotation),Web资源之间简单、轻量级的数据交换格式;,服务器直接生成javascript语句,客户端获取后直接用eval方法来获得这个对,象,这样就可以省去解析XML的性能损失;,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的典型代表(6),XUL(XMLUserInterfaceLanguage)使用XML来描述用户界面的一种技术;,基于XML对html的扩展,实现了完整、强大的UI设计功能;,用css来控制界面风格,用DTD来替代字符串,方便的实现本地化,用,javascript来对用户界面的操作作出反应,提供基本的逻辑编程、通过DOM来动态控制用户界面,用RDF格式来存储独立于界面的数据。,MicroFormat,一套标记,在HTML页面中表达语义,其他程序可自动提取这些语义并自动,加以处理;,部分实现了SemanticsWeb的理想,但相当的简单。,.,新兴的软件体系结构风格、方法与技术(I),Web2.0典型技术的体系结构:RSSandMashup,RSSArchitecture,MashupArchitecture,.,新兴的软件体系结构风格、方法与技术(I),Web2.0典型技术的体系结构:AJAX,.,新兴的软件体系结构风格、方法与技术(I)PeterForretsWeb2.0MemeMap,公共数据人口统计,获取信息,混合、整理、重新组织,发布,卫星定位地图,电视节目等等用户数据BlogWikiAmazon书评图片共享视频共享,丰富的用户界面AJAXFlashDHTML可视化地图;日历;,等等个性化服务,聚合数据Google搜索页面排序Amazon书榜EBay信用度等等元数据Tag标记等等,聚合-标注-转换-过滤用户界面:REST/RPC/SOAP索引-映射-排序方式:RSS/ATOM/JSON/BT下载,广告推荐;支付方式;设备手机;PDA;随时随地,.,新兴的软件体系结构风格、方法与技术(I),TimOReillys“WhatIsWeb2.0”,Web就是计算平台,Web就是OS)集体的智慧)数据的智能化处理软件就是服务,传统软件周期的终结轻量级编程模式,软件超越了单一设备的层次,丰富的用户体验,.,新兴的软件体系结构风格、方法与技术(I),Web2.0的特征,从知识生产的角度看,Web1.0:将以前没有放在网上的人类知识,通过商业的力量,放到网上去。Web2.0:将这些知识,通过每个用户的浏览求知的力量,协作工作,把知识有机的组织起来,在这个过程中继续将知识深化,并产生新的思想火花;,从内容产生者角度看,Web1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论