1 / 26

第 9 讲 PaaS 及关键技术

第 9 讲 PaaS 及关键技术. §9.1 PaaS 简介 §9.2 运行托管平台 §9.3 基础设施. XaaS. §9.1 PaaS 简介. Platform as a Service 提供应用软件的开发、测试、部署和运行环境 运行平台,如应用服务器 辅助系统软件,如数据库 关键技术 分布式文件系统 分布式数据 并行计算技术 典型产品 GAE Windows Azure. PaaS 的特征要求. 开发者只关注应用开发,无须关注应用的具体部署、配置、扩展和优化等。 自动缩放 按需计费 黏性平台绑定 方便管理维护 方便应用部署.

benoit
Télécharger la présentation

第 9 讲 PaaS 及关键技术

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第9讲 PaaS及关键技术 §9.1 PaaS简介 §9.2 运行托管平台 §9.3 基础设施

  2. XaaS

  3. §9.1 PaaS简介 • Platform as a Service • 提供应用软件的开发、测试、部署和运行环境 • 运行平台,如应用服务器 • 辅助系统软件,如数据库 • 关键技术 • 分布式文件系统 • 分布式数据 • 并行计算技术 • 典型产品 • GAE • Windows Azure

  4. PaaS的特征要求 开发者只关注应用开发,无须关注应用的具体部署、配置、扩展和优化等。 • 自动缩放 • 按需计费 • 黏性平台绑定 • 方便管理维护 • 方便应用部署

  5. PaaS的系统构成 -应用逻辑处理 -用户界面呈现 应用数据的查询、处理 -弹性资源供给 -程序接口服务 -管理服务

  6. PaaS流派 • IaaS衍生型 • 基于Amazon的IaaS (EC2,S3)建立PaaS系统 • 传统生态延伸型 • 端+云的无缝结合:Windows Azure • SaaS拓展型 • 基于SaaS分割、抽取:Salesforce.com • 革新型 • 基于互联网、分布式计算的全新平台:GAE

  7. Google PaaS 系统

  8. §9.2 运行托管平台 • 提供弹性可扩展分布式应用运行环境和服务 • 根据用户访问量和数据存储需求 • 主要部分 • 应用程序执行容器 • 数据存储服务 • API类库服务

  9. GAE

  10. GAE的功能模块

  11. GAE的关键技术 – 沙箱技术(SandBox) • 用于实现应用之间的隔离 • 共享物理服务器 • 也可以通过虚拟化实现隔离(如Windows Azure) • 隔离的含义 • 操作隔离:非法操作 • 数据隔离:数据访问 • 性能隔离:资源占用

  12. GAE的关键技术 – 沙箱技术(SandBox) • 平台重构(非法访问隔离) • 平台对敏感访问进行检查和控制 • 如Java、Flash、Silverlight等 • 操作系统定制(性能隔离) • 一个OS虚拟多个OS (Virtual private server) • 限制资源占用 • 如果OpenVZ • 伪造环境(数据隔离) • 伪造环境使操作局限于指定的范围

  13. GAE的关键技术 – 请求调度技术 • 实现动态部署和弹性扩展 • 主要技术 • 基于DNS的调度 • 基于虚拟IP的调度 • 基于应用的调度 • 基于链路的调度

  14. GAE的关键技术 – 分布式缓存 • 避免重复查询数据库开销 • 主流系统:Memcached、Velocity、Coherence等

  15. §9.3 基础设施 • 分布式计算技术 • 分布式文件系统 • 分布式数据库 • 分布式协同管理 • 集群和平台管理

  16. 分布式计算技术 • 云平台的分布式计算特性 • CAP理论: • Consistency、Availability、Partition-tolerance 不可兼得 • 传统分布式计算注重”C” • 云计算平台注重”A”和”P” • MapReduce计算模型 • Google发明的分布式计算模型 • 适于海量数据处理 • 传统分布式计算适于“计算”密集型任务 • 基于数据分割

  17. MapReduce技术 • 基本过程 • Map:将一组key/value对转换为中间key/value对 • Reduce:将具有相同中间key值的value进行整合得到结果 • 例子: • 统计一个大文本文件中每个英文字母出现的次数 • Map: • 将文件分为m份,每份对应一个map任务:统计其中的字母次数 • 一个计算节点负责执行一个map任务 a/f(a), b/f(b),...,z/f(z). • Reduce: • 一个字母对应一个reduce任务:整合不同map任务中该字母的次数

  18. MapReduce技术

  19. 分布式文件系统 • 不同节点共享存储的数据(不是物理存储资源) • 基本特征 • 透明性 • 并发访问 • 高可用性 • 基本需求 • 数据冗余 • 异构性 • 一致性 • 高效性 • 安全性

  20. GFS • 多层次容错 • 原子操作保证一致性 • 自动复制 • 按块存储,并行读取,效率高

  21. 分布式数据库 • 多个数据库单元通过网络连接、组合成逻辑上统一的数据库 • 传统的分布式数据库 • 基于一个DBMS • 如:Azure、PNuts等。 • 云平台的分布式数据库 • 基于分布式文件系统 • 高容量、高扩展性 • 如BIgTable、Hbase等。

  22. 分布式协同管理 • 共享资源的并行操作数据不一致 • 通过同步机制控制并发操作 • 常用的并发控制方法 • 基于锁的并发控制 • 两阶段锁协议 • 多副本的锁机制:读-写全法、多数法、主副本法、单一管理法 • 基于时间戳的并发控制 • 基于全局唯一的时间戳 • 乐观并发控制 • 基于版本的并发控制

  23. Google Chubby 并发控制 • 分布式所服务 • 通过文件操作实现锁操作 • 文件代表锁 • 主要目标 • 高可用性、高可靠性 • 性能、吞吐和空间占用不关心

  24. 集群和平台管理 • 集群的自动化部署 • 安装配置OS、DFS、分布式计算程序、作业管理软件、系统管理软件等。 • 集群作业调度 • 基于资源管理器调度作业的运行节点和时间 • Google Work Queue: 调度管理MapReduce任务 • 远程控制 • 开关机控制 • 远程控制台 • 应用管理与度量计费

  25. 小结 • PaaS的概念、特征和流派 • PaaS系统的构成 • 运行托管平台及关键技术 • 运行隔离 • 请求调度 • 分布式缓存 • PaaS的基础设施/支撑技术 • 分布式计算技术 • 分布式文件系统 • 分布式数据库 • 分布式协同管理 • 集群和平台管理

  26. 课后作业 1. GAE平台的应用服务架构与传统的Web应用服务架构有什么异同? 2. GFS的元数据节点可能会成为性能瓶颈,如何改进?

More Related