《云计算技术与应用基础》 ●●●●●●●●●●●●●●● ●●●●●●●●●●●●●● ●●●●● ●●●●●●●●● ●●●●● 第8章云应用 (课时数:8课时)
第8章 云应用 (课时数:8课时) 《云计算技术与应用基础》
主要内容 国外典型企业与产品 国内典型企业与产品 典型行业应用
1 主 要 内 容 1 国外典型企业与产品 2 国内典型企业与产品 3 典型行业应用
一、国外典型企业与产品 (-Google GAE 2008年Google?公司推出了Google App Engine(GAE)Web运行平台, 使用户的业务系统能够运行在Google:分布式基础设施上。GAE可以看作 是托管网络应用程序的平台。GAE平台具有易用性、可伸缩性、低成本的 特点。另外,Google公司还提供了丰富的云端应用,如Gmail、.Google Docs等。Gmail是一个电子邮箱的SaaS平台,Google Docs:是一个界面 类似于微软Office产品的SaaS平台。 2
2 一、国外典型企业与产品 (一)Google GAE 2008年Google公司推出了Google App Engine(GAE)Web运行平台, 使用户的业务系统能够运行在Google分布式基础设施上。GAE 可以看作 是托管网络应用程序的平台。GAE平台具有易用性、可伸缩性、低成本的 特点。另外,Google公司还提供了丰富的云端应用,如Gmail、Google Docs等。Gmail是一个电子邮箱的SaaS平台,Google Docs是一个界面 类似于微软Office产品的SaaS平台
GAE平台简介 GAE采用云计算技术,使用多个服 GAE Webl服务基础设施提供了可伸缩的服务接 务器和数据中心来虚拟化应用程序。 口,保证了GAE对存储和网络等资源的灵活使 用和管理。 因此GAE可以看作是托管网络应用程 ● 分布式存储服务则提供了一种基于对象的结构 序的平台。GAE给用户提供了主机、 化数据存储服务,保证应用能够安全、可靠并 数据库、互联网接入带宽等资源,用 且高效地执行数据管理任务。 户不必自己购买设备,只需使用GAE ● 应用程序运行环境目前支持Java、Python、 提供的资源就可以开发自己的应用程 PHP和Go编程语言。 序或网站,并且可以方便地托管给GA 通过GAE的管理控制台,用户可以查看应用的 E。 资源使用情况。 同时,GAE提供了一个开发简单、 GAE Webl应用 部署方便、伸缩快捷的Web应用运行 Google App Engine 和管理平台。GAE的服务涵盖了Web 应用整个生命周期的管理,包括开发 分布式存储服务 应用程序环境 应用开发套件 管理控制台 、测试、部署、运行、版本管理、监 GAE Web服务基础设施 控及卸载。GAE的系统结构见右图
3 GAE平台简介 GAE采用云计算技术,使用多个服 务器和数据中心来虚拟化应用程序。 因此GAE可以看作是托管网络应用程 序的平台。GAE给用户提供了主机、 数据库、互联网接入带宽等资源,用 户不必自己购买设备,只需使用GAE 提供的资源就可以开发自己的应用程 序或网站,并且可以方便地托管给GA E。 同时,GAE提供了一个开发简单、 部署方便、伸缩快捷的Web应用运行 和管理平台。GAE的服务涵盖了Web 应用整个生命周期的管理,包括开发 、测试、部署、运行、版本管理、监 控及卸载。GAE的系统结构见右图。 ⚫ GAE Web服务基础设施提供了可伸缩的服务接 口,保证了GAE对存储和网络等资源的灵活使 用和管理。 ⚫ 分布式存储服务则提供了一种基于对象的结构 化数据存储服务,保证应用能够安全、可靠并 且高效地执行数据管理任务。 ⚫ 应用程序运行环境目前支持Java、Python、 PHP和Go编程语言。 ⚫ 通过GAE的管理控制台,用户可以查看应用的 资源使用情况
国外典型企业与产品 GAE主要面向软件开发者,主要提供以下功能: 01 OPTION 支持Web应用 02 动态网络服务,提供对常用网络技术的支持 OPTION 03 提供持久存储空间,并支持简单的查询、排序和本地事务 OPTION 04 能对应用进行自动扩展和负载平衡 OPTION 05 提供功能完整的本地开发环境,可以让用户在本机上对基于 OPTION GAE的应用进行调试 06 支持E-mail、用户认证和Memcache等多种服务。 OPTION 07 提供能在指定时间触发事件的计划任务和能实现后台处理的 OPTION 任务队列
4 一、国外典型企业与产品 GAE主要面向软件开发者,主要提供以下功能: 01 OPTION 02 OPTION 03 OPTION 04 OPTION 支持Web应用 动态网络服务,提供对常用网络技术的支持 提供持久存储空间,并支持简单的查询、排序和本地事务 能对应用进行自动扩展和负载平衡 05 OPTION 提供功能完整的本地开发环境,可以让用户在本机上对基于 GAE的应用进行调试 06 OPTION 支持E-mail、用户认证和Memcache等多种服务。 07 OPTION 提供能在指定时间触发事件的计划任务和能实现后台处理的 任务队列
国外典型企业与产品 (-)Google GAE GAE架构可以分为前端、Datastore和服务群3个部分。 App Master Front End App Server Datastore Request Front End App Server Front End App Server Memcache Static Files Users URLfetch GA架构示意图 Task Queue 5
5 一、国外典型企业与产品 (一)Google GAE GAE 架构可以分为前端、Datastore 和服务群 3 个部分。 GAE架构示意图
国外典型企业与产品 (-)Google GAE (l)前端:包括Front End、Static Files、App Server和App Master。 Front End:承担负载均衡器和代理的职责,主要负责负载均衡和将用户的请求转 发给App Server(应用服务器)或者Static Files等。 Static Files:在概念上类似于内容分发网络(Content Delivery Network, CDN),用于存储和传送那些应用附带的静态文件(如图片、CSS和JS脚本等)。 App Server:用于处理用户发来的请求,并根据请求的内容调用后面的Datastore 和服务群。 App Master:是在应用服务器间调度应用,并将调度之后的情况通知Front End。 6
6 一、国外典型企业与产品 (一)Google GAE (1)前端:包括 Front End、Static Files、App Server 和 App Master 。 Front End: 承担负载均衡器和代理的职责, 主要负责负载均衡和将用户的请求转 发给 App Server(应用服务器)或者 Static Files 等。 Static Files:在概念上类似于内容分发网络(Content Delivery Network, CDN) ,用于存储和传送那些应用附带的静态文件(如图片、CSS 和 JS 脚本等) 。 App Server:用于处理用户发来的请求,并根据请求的内容调用后面的Datastore 和服务群。 App Master:是在应用服务器间调度应用,并将调度之后的情况通知 Front End
国外典型企业与产品 (-)Google GAE (2)Datastore:是基于BigTable技术的分布式数据库,虽然它可以被 理解成为一个服务,但是由于它是整个GAE唯一存储持久化数据的地方, 因此它是GAE中一个非常核心的模块。 Datastore提供了一整套强大的分布式数据存储和查询服务,并能通过水平 扩展来支撑海量的数据。Datastore支持结构化数据查询和更新操作,并提 供事务处理功能,从而保证数据的一致性。与传统关系数据库相比, Datastorel的优势在于成本低、支持伸缩、并发性好和容易管理
7 一、国外典型企业与产品 (一)Google GAE (2)Datastore:是基于 BigTable 技术的分布式数据库,虽然它可以被 理解成为一个服务,但是由于它是整个GAE 唯一存储持久化数据的地方, 因此它是 GAE 中一个非常核心的模块。 Datastore提供了一整套强大的分布式数据存储和查询服务,并能通过水平 扩展来支撑海量的数据。Datastore支持结构化数据查询和更新操作,并提 供事务处理功能,从而保证数据的一致性。与传统关系数据库相比, Datastore的优势在于成本低、支持伸缩、并发性好和容易管理
国外典型企业与产品 (-)Google GAE (3)服务群:服务群提供很多服务供App Server调用。这些服务包括 Memcache(内存缓存)、Images(图形)、Users(用户)、URL fetch(URL抓取)和Task Queue(任务队列)等。 ● GAE支持将应用程序与Google账户集成以进行用户身份验证。 ● GAE应用程序可以在Java环境和Python环境之一中运行,每种环境提 提示 供了标准协议和常用技术以进行网络应用程序开发。 ●基于Java或Python的GAE程序的编写和发布请读者参阅其他资料。 8
8 一、国外典型企业与产品 (一)Google GAE (3)服务群:服务群提供很多服务供 App Server 调用。这些服务包括 Memcache(内存缓存) 、Images(图形) 、Users(用户) 、URL fetch(URL 抓取)和 Task Queue(任务队列)等
国外典型企业与产品 (-Google GAE (3)服务群:服务群提供很多服务供App Server调用。这些服务包括 Memcache(内存缓存)、Images(图形)、Users(用户)、URL fetch(URL抓取)和Task Queue(任务队列)等。 GAE支持将应用程序与Google账户集成以进行用户身份验证。 GAE应用程序可以在Java环境和Python环境之一中运行,每种环境提 提示 供了标准协议和常用技术以进行网络应用程序开发。 ●基于Java或Python的GAE程序的编写和发布请读者参阅其他资料
9 一、国外典型企业与产品 (一)Google GAE (3)服务群:服务群提供很多服务供 App Server 调用。这些服务包括 Memcache(内存缓存) 、Images(图形) 、Users(用户) 、URL fetch(URL 抓取)和 Task Queue(任务队列)等