欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    云计算时代的软件开发技术及其应用1ppt课件.ppt

    • 资源ID:5487729       资源大小:12.91MB        全文页数:75页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    云计算时代的软件开发技术及其应用1ppt课件.ppt

    云计算时代的软件开发技术及其应用,软件工程国家重点实验室(武汉大学)武汉大学计算机学院应时2010-05-22,提纲,一、云计算时代的软件二、云计算时代软件的开发技术三、云计算时代软件开发技术的创新与发展四、我们的工作五、总结,软件工程国家重点实验室,2,一、云计算时代的软件,软件工程国家重点实验室,3,1.1 云计算,Wikipedia上的定义:云计算是这样一种计算方式,计算资源是动态易扩展而且虚拟化的,往往通过互联网提供。用户不需要了解“云”中基础设施的细节,不必具有相应的专业知识,也无需直接进行控制。云计算时代的软件是运行在云平台上,并具有在线租赁服务形式、按用量可伸缩性占用资源、按需要个性化定制等特性的软件。,软件工程国家重点实验室,4,软件工程国家重点实验室,5,1.1 云计算,云计算的使用方式,将计算和存储等资源以服务的方式提供,用户按需使用,按用量付费,6,软件工程国家重点实验室,有了云计算,我们可以无需购买昂贵的软硬件设备更少的技术维护按需获取海量的IT资源按用量支付费用聚焦于业务,图片来源:IBM公司,1.1 云计算,7,软件工程国家重点实验室,图片来源:IBM公司,1.2 云计算的服务体系,服务多租赁化,平台可伸缩化,资源虚拟化,让人振奋的许多云计算特性主要是靠软件技术实现的 软件技术将在云计算时代开发出令人惊讶的应用系统,8,软件工程国家重点实验室,平台即服务,Platform as a Service,High VolumeTransactions,Software as a Service,服务器,网络,存储,Metering,监控,计费,服务云,开发云,企业云,多租赁,安全,中间件,协作,业务服务,CRM/ERP/HR,定制服务,数据中心,虚拟化,动态供应,服务管理,J2EE,On-ramps,服务封装,Ajax,开发,On-ramps,On-ramps,开发工具,与其他云的互操作,软件即服务,基础设施即服务,图片来源:IBM公司,1.2 云计算的服务体系,1.3 云软件的实例,9,软件工程国家重点实验室,Goole提供的云软件服务搜索引擎GmailGoogle DocsGoogle Picasa Web,1.3 云软件的实例,10,软件工程国家重点实验室,S于1999年创新地以在线租赁的模式,提供按需定制的客户关系管理的软件服务功能的增删,用户界面的个性化等用户只需支付租用费,就可以使用CRM服务,包括普通的联系人管理,产品目录到订单管理,机会管理,销售管理等服务。提供一个平台,使得客户无需花费大量资金和人力而拥有自己的软件,所有的软件和数据都储存在平台上。,1.3 云软件的实例,11,软件工程国家重点实验室,据Gartner预计,到2010年企业30%的软件应用将通过服务来提供。,1.4 云计算时代软件的新变化,12,软件工程国家重点实验室,用户只需要使用软件,而不用自己去运行(软件始终在网上运行着)和管理软件。使用云上的软件只需注册、客户化、应用即可。用户变成租户,单一实例的软件使用模式变成多租赁的服务模式网站从Web信息发布平台变成Web应用软件运行平台,变成系统托管平台,变成多租户的软件服务平台,1.4 云计算时代软件的新变化,13,软件工程国家重点实验室,软件运行在因特网上的共享数据中心上,而不是运行在自有的服务器和计算机上。应对用量变化的手段,从制作网络镜像手工增删资源,到系统和平台的自动伸缩。可个性化定制快速开发,1.5 本报告关注的主题,14,软件工程国家重点实验室,云计算时代软件需要新的开发技术软件工程师也需要使用云计算时代的软件开发技术去提高开发能力开发作为服务,15,软件工程国家重点实验室,在云计算平台中,如何开发、运行和维护那些为(最终)用户提供云服务的软件系统(包括系统软件、工具软件和应用软件等各类软件),1.5 本报告关注的主题,关注云计算模式下的软件开发与设计技术,软件工程国家重点实验室,图片来源:美国加州大学圣巴巴拉分校,二、云计算时代软件的开发技术,软件工程国家重点实验室,16,软件工程国家重点实验室,17,云计算是在分布式计算、并行计算和网格计算的基础上,经一系列技术的创新和融合而形成的。目前,云计算平台本身以及云计算平台上的应用软件的开发都使用分布式并行编程技术。,2.1 云计算时代的分布并行编程技术,云计算时代的分布并行编程技术分布并行数据处理技术Google Map/ReduceHadoop Map/Reduce分布式文件系统Google File SystemHadoop Distributed File System分布式数据库Google BigTableHadoop HBase,2.1 云计算时代的分布并行编程技术,2.2 分布并行数据处理,19,软件工程国家重点实验室,Map/Reduce用于大规模数据并行处理数据量大(超过1TB)在成百上千个CPU上并行处理用户只需实现下面接口map(in_key,in_value)-(out_key,intermediate_value)listreduce(out_key,intermediate_value list)-out_value list,2.2 分布并行数据处理,20,软件工程国家重点实验室,Map/Reduce架构,图片来源:美国华盛顿大学课件,2.2 分布并行数据处理,MapReduce实现原理,图片来源:Google Research Publication,2.3 分布式文件系统,软件工程国家重点实验室,22,Google File System(GFS)需求:在廉价、相对不可靠的计算机上对巨量数据进行冗余存储。为什么不用现有的文件系统?-Google面对特殊的挑战文件较大,每个都在100M以上,通常为几个GB文件通常需要频繁的追加用流方式读取高吞吐量低延迟针对上述问题,GFS在文件系统性能和可伸缩性方面进行了优化设计。,GFS的设计理念文件用块存储每个块固定为64MB通过冗余解决可靠性问题每个块同时拷贝在3个块服务器上主服务器负责协调访问和保存元数据简单化的集中管理定制化的API无数据缓存较大文件块和流式读取使得缓存效果不佳,软件工程国家重点实验室,23,2.3 分布式文件系统,GFS架构,2.3 分布式文件系统,图片来源:Google Research Publication,GFS集群一个 GFS 集群有一个主服务器和多个块服务器文件被分割成固定尺寸的块。块服务器把块作为 linux 文件保存在本地硬盘上,并根据指定的块句柄和字节范围来读写块数据。主服务器管理文件系统所有的元数据,包括名字空间、访问控制信息和文件到块的映射信息,以及块当前所在的位置。客户端与主服务器交互,处理元数据客户端与块服务器交互,存取数据本身,2.3 分布式文件系统,2.4 分布式数据库系统,Google BigTable为了处理Google内部大量的格式化以及半格式化数据而构建的大规模分布式数据存储系统 特点面向大规模处理、容错性强的自我管理系统,拥有TB级的内存和PB级的存储能力,每秒可以处理数百万的读写操作能够保存记录的不同时段的版本构建于GFS和Map/Reduce基础之上,软件工程国家重点实验室,26,BigTable的设计理念面向网页数据的发布、搜索和浏览等特定处理的需要,简化数据管理系统的设计,并提高性能不支持关联不支持SQL查询简化数据的一致性管理网页数据的管理对一致性要求不高简化事务管理网页数据的处理(搜索、发布)对事务管理要求不高面向海量数据管理要求设计分割和合并管理机制(基于元数据)设计自动伸缩功能(根据数据量调整资源用量),软件工程国家重点实验室,27,2.4 分布式数据库系统,BigTable的实现GFS为表文件、元数据和日志提供存储服务Chubby 提供分布式并行处理功能一个Table按照行被分割为多个tablet每一个tablet在物理层被存为SSTable文件通过维护keydisk block索引,SSTable 文件管理系统提供 keyvalue的索引功能,2.4 分布式数据库系统,BigTable架构,软件工程国家重点实验室,29,2.4 分布式数据库系统,图片来源:Google Research Publication,软件工程国家重点实验室,2.5 Google App Engine,Google App Engine 提供运行和开发的基础平台,允许开发人员编写网络应用,上传至App Engine部署运行支持Java和Python两种开发语言App Engine 应用程序易于构建和维护,并可根据访问量和数据存储需要,进行伸缩。将应用程序隔离在它自己的安全可靠环境中,该环境与网络服务器的硬件、操作系统和物理位置无关,软件工程国家重点实验室,开发GAE应用的方法利用App Engine SDK进行开发,本地创建Web应用项目,本地编译Web应用项目,上传应用程序到Google AppEngine,2.5 Google App Engine,2.6 Salesforce F,F的云计算平台基于Web的随需应变的企业级软件开发和运行平台开发的软件能在F平台上运行由一组集成的工具和应用程序服务组成,图片来源:,F云计算平台整体概览,Native ERP Connectors,Native Desktop Connectors,Integration Middleware,Mash-ups from AppExchange,Developer Toolkits,2.6 Salesforce F,图片来源:,元数据驱动的平台:使用元数据,定义数据模型、对象、窗体、工作流等,在运行时动态生成租户的应用程序,2.6 Salesforce F,Apex 代码,多租赁虚拟机,元数据,可视化设计,应用程序开发模式声明式开发页面拖拽式设计集成开发环境APIMetadata APIWeb Services API,2.6 Salesforce F,图片来源:,APEX语言开发人员声明式开发APEX程序编译后的APEX程序作为元数据存储在数据库中F平台解释并控制APEX代码的运行,2.6 Salesforce F,图片来源:,APEX语言Apex为第一个所需应变的、多租户编程语言和平台Apex是一种Java式的语言,可以在S的服务上运行。用户能够使用这种语言创建客户组件、客户化和修改现有的S代码、创建触发器和编写程序。Apex平台还包括一个应用程序编程接口以访问和管理复杂的数据关系和Ajax工具包。Apex平台中的实时消息和整合工具允许其它应用程序获得S中的业务事件。,2.6 Salesforce F,图片来源:,F AppExchange企业软件的在线“超市”,用户可以自行购买那些可以即选即用的功能模块,然后在其用户名下的S上运行,其中的大部分模块是由第三方开发并自主提供的。提供一个开发人员与用户共享软件和数据的社区,2.6 Salesforce F,F for Google App Engine工具使Google App Engine平台上Web应用的开发人员可以运行和使用驻留在F平台上的企业应用和数据提供了Java和Python库,允许开发人员从Google App Engine中的应用软件,通过使用F中Web服务的API接口,查询和处理F中的数据,从而实现Google App Engine中应用软件与F中应用软件的无缝地集成。,2.6 Salesforce F,开发方墨尔本大学云计算实验室Manjrasoft主要负责人Dr.Rajkumar Buyya相关信息,2.7 Cloudbus,Aneka 基于.NET的云计算针对企业和公共云的PaaS基于服务契约的资源管理云间互操作的要素-Brokers,将各种云联合起来,为应用程序提供跨分布式资源的扩展能力第三方的云服务使用不同厂商的云存储,建立内容交付网络绿色云/数据中心充分利用资源,面向QoS的资源分配CloudSim:模拟云的工具集为资源管理策略与算法,提供设计与评估支持,2.7 Cloudbus,2.7 Cloudbus,图片来源:Buyyas Presentation,Aneka:.NET-based Cloud Computing,SDK:包括针对多种编程模型和开发工具的 API运行环境:管理应用程序执行适用于:开发企业云应用将某些应用移植到云上提供客户应用的移植:企业 公共云,2.7 Cloudbus,图片来源:Buyyas Presentation,2.8 技术评价,已有的编程技术主要面向特定领域软件开发平台还待完善和发展云计算时代的软件工程方法学需要创新,三、云计算时代软件开发技术的创新与发展,软件工程国家重点实验室,45,3.1 云计算时代应用软件的设计要求,云计算模式下应用软件系统的设计要求基于SOA的SaaS模式多租赁特征,47,软件工程国家重点实验室,SaaS是指:软件以在线服务的方式供租户使用软件用户通过浏览器在线使用业务应用软件。软件及其数据都存在因特网上的数据中心里用户不需安装和管理软件系统,不需在硬件方面投入用户按自己的需要选择、注册并使用软件,3.2 基于SOA的SaaS模式的软件设计,48,软件工程国家重点实验室,SaaS改变了软件的交付模式使用方式运行机制开发方法SaaS将促进软件工程的创新与发展新的方法学非功能需求技术需求技术/管理/质量,3.2 基于SOA的SaaS模式的软件设计,SaaS模式的特性服务(Service)面向企业的服务(Line-of-business service)面向个人消费者的服务(Consumer-oriented service)多租赁(Multi-tenancy)动态可伸缩性(Dynamic Scalable)动态可配置性(Dynamic Configurable),3.2 基于SOA的SaaS模式的软件设计,3.2 基于SOA的SaaS模式的软件设计,云计算应用软件的体系结构是一种基于SOA技术体系的软件体系结构具有面向业务、粗粒度、基于服务、松散耦合和动态绑定等特点,3.2 基于SOA的SaaS模式的软件设计,云计算应用软件的体系结构设计更关注软件系统的质量属性,例如高性能、伸缩性、并发性、分布性、安全性和容错性等软件整体的并发性和分布性设计服务自身的并发性和分布性设计满足软件系统的质量属性成为难题和挑战,成为不可回避的问题如何建模、实现和测试这些属性,需要新的有效技术和方法。,3.3 多租赁特征的设计,多租赁特性SaaS服务通常基于一套标准的软件系统,为成千上万的租户同时提供不间断的服务设计要求支持用户对界面、业务逻辑、数据等方面的个性化需求支持不同租户之间数据和配置的隔离,保证每个租户数据的安全与隐私对支撑软件的基础设施平台的性能、伸缩性、可信性提出很大挑战,设计关注点数据和应用隔离多租户间最大程度共享资源的同时,严格区分和隔离属于不同租户的数据,以及应用的配置。例如:用数据表的字段或视图,区分不同租户的数据可配置性功能服务可以根据用户个性化需求灵活配置。可伸缩特性 动态自动地适应大量的租户、大量的数据以及高并发的要求性能需要最大程度地提高系统并发性,更有效的使用系统资源,3.3 多租赁特征的设计,四、我们的工作,软件工程国家重点实验室,54,4.1 高考智能择校推荐系统,项目背景中国2010年预计有1319万人参加高考,计划招收629万人,估计80万左右因为学费、就业迷茫而弃考(可能对目前大学教育状况了解欠缺,如学费、生活消费、就业率、专业差异等)高考系统的新增数据和使用率呈现“突爆性”,全年主要集中在1个月左右时间,而其他时间相对闲置,对数据实时性和系统快速响应要求很高。,项目背景如何综合考虑考生信息和高校信息,帮助考生正确的选择最适宜其特点的高校?考生信息:高考成绩、预考成绩、兴趣爱好、生活习惯、所能承受的学费及生活费用等高校信息:地址、评价、专业、学费、就业率、正/负面新闻、奖学金、各专业就业率、专业全国排名等如何根据系统使用率,弹性伸缩集群规模,满足实时性要求,并节省系统维护成本?,4.1 高考智能择校推荐系统,现有的同类系统中国高校录取在线 http:/择校网 http:/北大方正高考择校专家分析系统 http:/www.edu-北京市西城区高考估分选校系统 http:/高考填报志愿参考系统 http:/,4.1 高考智能择校推荐系统,4.1 高考智能择校推荐系统,现有系统的不足信息量庞大,彼此独立,缺乏有效的联系以主动搜索为主,缺乏客观的智能推荐缺乏数据挖掘、智能分析、综合评价体系缺乏开放性和可重用性未体现服务化的特点应对应用井喷的能力不足,4.1 高考智能择校推荐系统,项目研发内容基于云计算的高考数据/服务中心设计按需DeepWeb数据/服务采集技术数据挖掘与智能分析高考择校智能决策计算基于语义的Web服务发现自动和半自动相结合的Web服务组合技术,4.1 高考智能择校推荐系统,基于云计算的高考数据/服务中心设计将高考数据(结构化数值、文字;非结构化图片、视频等)及相关服务在一个统一体系中进行综合管理数据/服务资源分布式存储,每个节点对应一个虚拟机,从而通过弹性伸缩克服短时访问井喷提供数据/服务的检索、迁移(数据/环境)、备份(数据/环境)等高效资源管理,以及半自动服务组合基于Google和Salesforce平台,进行开发,4.1 高考智能择校推荐系统,按需DeepWeb数据/服务采集技术自动DeepWeb数据接口分析、集成等DeepWeb服务发现、识别、爬取等手工(人人是服务提供者,人人是服务使用者)服务倡导者(提出数据/服务需求)服务提供者(注册数据/软件服务)访问者:评价服务需求描述,或者最终服务质量,高考数据/服务中心跨硬件平台Intel内核机架服务器*1(2*xeon 4core 2.4G cpu,4*4G ECC DDR3 1333内存,272G SAS)AMD内核机架服务器*1(2*Opteron 4core 2.4G cpu,4*4G ECC DDR2 667内存,272G SAS)Power内核刀片服务器*4(2*power 1core 2.2G cpu,1G ECC DDR 333内存,40G ATA)Intel内核刀片服务器*10(1*xeon 1core 3.0G cpu,2*512M ECC DDR2 667内存,72G SCSI)Intel内核普通PC*1(1*赛扬 1core 2.6G,512M DDR333,80G ATA),4.1 高考智能择校推荐系统,高考数据/服务中心跨操作系统目前已测试VM0可用的linux平台Ubuntu、Cent、SUSE、Debian、Fedora/Red Hat而VMn为任意操作系统(可实现全/半虚拟化),4.1 高考智能择校推荐系统,平台监控与管理(支持PC和手机端),4.1 高考智能择校推荐系统,4.1 高考智能择校推荐系统,高考数据/服务资源的统计分析支持PC端和手机端的分析与可视化展示,趋势分析对比分析评价分析周边环境分析就业率分析,五、总结,软件工程国家重点实验室,66,5.1 大型云服务软件的开发需求是现实的,软件是IT系统的灵魂人类创造出的软件开发技术不会随着IT技术的发展而失去作用或降低重要性。它是我们在新的IT环境中开发更大规模、更复杂、更创新的应用软件系统的有力武器。软件开发技术不但会跟随IT技术的发展而变化,而且它自己也处在不断的发展过程中。新的软件开发技术将提高人类开发软件系统的能力云计算为人类使用更大、更复杂的软件系统,提供了可能。,软件工程国家重点实验室,67,5.2 发展需求与机遇流动人口服务,软件工程国家重点实验室,68,生殖健康,犯罪预防,危机应对,社会保障,外来流动人口的压力,人口流动形态推动了珠三角地区的现代化进程,也在人口、社会、经济等方面带来新问题,不断冲击着以往的管理机制,对公共管理与服务部门提出新的要求,技术需求:专业化信息、应用分层处理,多中心,海量终端,教育卫生,民主法制,城镇化与工业化进程,5.2 发展需求与机遇中小企业业务信息服务,软件工程国家重点实验室,69,面向中小企业商务的云服务,技术需求:低成本专业信息服务、按需服务,数据密集服务,中小企业支持珠三角地区经济社会发展,中小企业 1000,000,增加就业,增加经济活力,改善产业结构,扩大内需,克服:技术实力弱缺乏资金长远的预见性差信息化实施能力差,促进自主创新,5.2 发展需求与机遇大众健康服务,软件工程国家重点实验室,健康作为服务,健康的公民才能劳动创造价值,技术需求:低成专业健康服务、按需服务,数据密集服务,5.3 云服务软件开发技术需要创新发展,云计算的分布并发编程和数据库技术技术的现状仅提供API支持和简单的工具支持,欠缺编程模式、开发框架和方法学体系仅适用于关系较简单的海量(网页)数据的高效处理,欠缺对具有复杂关系的数据的处理能力。在云平台中,对于开发大规模复杂的企业应用软件系统而言,软件开发技术仍不充分,软件工程国家重点实验室,71,Web应用开发与云服务软件开发,软件工程国家重点实验室,72,J2EE,Map/Reduce,Struts、Spring,Eclipse、Oracle JdeveloperNetBeans,J2EE设计模式,IBM MapReduce Tools for Eclipse,?,?,基础API与技术架构,开发框架,IDE工具,开发方法学,5.3 云服务软件开发技术需要创新发展,Web数据库与云数据服务,软件工程国家重点实验室,73,JDBC,Herbernat、JPA、SDO、JDO,传统的关系型数据库(Oracle、MySQL),云数据库服务(BigTable、HBase),Bigtable API、Hbase API,?,开发框架,API,数据库,关系代数,?,理论体系,5.3 云服务软件开发技术需要创新发展,5.4 结束语,云服务软件系统的开发技术,需要创新、发展和积累。云服务软件系统的开发技术将提高人类的软件生产能力,满足开发更大规模、更复杂软件系统的社会需求,软件工程国家重点实验室,74,软件工程国家重点实验室,75,谢谢,

    注意事项

    本文(云计算时代的软件开发技术及其应用1ppt课件.ppt)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开