270 likes | 416 Views
第 10 讲 SaaS. §10.1 简介 §10.2 呈现层技术 §10.3 调度层、业务、数据层技术 §10.4 用户管理和配置管理. 云计算服务. 云计算 = 数据 * (软件 + 平台 + 基础设施)* 服务 数据( Data ) 爆炸增长(传感器、物联网): 1.2ZB = 10 21 B 各个领域各个层面 软件( Software ) 检索、发现、关联、处理和创造数据 平台( Platform ): “云计算”时代也会诞生自己的通用平台 基础设施( Infrastructure ) 存储资源、计算资源等 服务( Service )
E N D
第10讲 SaaS §10.1 简介 §10.2 呈现层技术 §10.3 调度层、业务、数据层技术 §10.4 用户管理和配置管理
云计算服务 云计算 =数据*(软件+平台+基础设施)* 服务 • 数据(Data) • 爆炸增长(传感器、物联网):1.2ZB = 1021B • 各个领域各个层面 • 软件(Software) • 检索、发现、关联、处理和创造数据 • 平台(Platform): • “云计算”时代也会诞生自己的通用平台 • 基础设施(Infrastructure) • 存储资源、计算资源等 • 服务(Service) • IT服务化:产品服务 XaaS
SaaS • Software/Application as a Service • 将运行于云中的应用软件的功能交付给用户。 • 关键技术 • 呈现技术 • 多租户技术(Multitenancy) • 典型产品 • Salesforce 的CRM服务
优势与特性 • 即订即用 • 无须维护 • 按需使用 • 随时接入 • 安全可靠
成熟度及分类 • I型:特定/定制 Ad-hoc / custom • 即传统的“软件运营” • 用户都有定制的程序版本,运行自己的实例 • 传统软件少量改变即可移植 • 通过合并服务器、系统维护降低成本 • II型:可配置 Configurable • 详细的配置选项对元数据进行配置 • 不同用户使用同一程序的不同实例 • III型:多租户 Multi-tenancy • 不同用户使用同一程序的单一实例 • 隔离用户的操作界面和应用数据 • IV型:可扩展性 Scalable • 通过多层架构对服务器进行动态调整适应可变负载
SaaS的架构 • 呈现层(View) • 实现与用户的交互 • 浏览器或本地客户端 • 调度层(Schedule) • 接收、认证用户请求 • 分发用户请求 • 业务层(Business) • 具体处理业务逻辑 • 数据层(Data) • 关系性、事务性业务数据
§10.2 呈现层技术 • 主要基于Web • “象使用本地应用那样使用SaaS应用” • 需求要点 • 迅速的动态交互 • 丰富的交互手段 • 高效的呈现性能 • 界面可定制 • 离线使用 • 直观教程
基于插件的Web呈现技术 • Flash • Silverlight • JavaFX
基于浏览器的Web呈现技术 • HTML5 • 实现网页结构与内容描述的扩展 • 满足功能需求 • 满足离线使用需求 • CSS3 • 页面显示特效 • 更接近客户端效果 • Ajax • 部分、异步交互数据 • 避免页面重载导致的不连贯
HTML5 • W3C,2007 • 主要改进(相比HTML4及以前版本) • 增加Audio、Video等多媒体元素 • 嵌入编解码器 • 支持定时播放、播放控制 • 支持H.264和Ogg • 增加Canvas元素 • 用JavaScript绘图 • 提供Geolocation地理位置API • 本地存储功能 • 增加了结构化标签 • 。。。
CSS3 • Cascading Style Sheets,层叠样式表 • 用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等) • CSS3的新特性 • 文字特效 • 动画支持 • 。。。
Ajax • 能在不更新整个页面的前提下维护数据 • 不是一种单一的技术,而是利用了一系列技术
§10.3 调度层、业务、数据层技术 • 调度层 • 将客户端的请求调度到合适的业务处理服务器上 • 基本要求 • 不同处理器负载大致均衡 • 同一会话由同一处理器执行
调度技术 • 调度方法 • 基于DNS • 基于虚拟IP • 基于链路聚合:用于整合链路提高网络传输能力 • 基于应用:用于分配到分布式调度器 • 调度策略 • 同一用户的多个请求调度到同一服务器 • 同一租户的请求调度到尽量少的一组服务器 • 尽量实现不同类型负载的互补 • 。。。
业务层 无状态最好 重要状态数据全局空间 次要状态数据本地空间
数据层 • 数据类型 • 结构化数据:二维表,信息实体、关系 • 非结构化数据:文本文档、图片、音频视频等 • 半结构化数据:基于标签或标记符的结构性数据 • 数据层技术 • 数据库集群 • 传统的数据库系统集群化 • 一致性、可靠性 • 分布式数据库 • 基于分布式文件系统的数据库系统 • 可靠性、容断性
§10.4 用户管理和配置管理 • 用户管理 • (租户的)用户身份认证和访问权限控制 • 身份认证:单独登录(Single Sign On, SSO)
用户权限管理 • 基于角色的访问控制 RBAC • 传统的访问控制技术
个性化配置 • 呈现层 • 界面、表单、报表等 • 业务层 • 功能配置 • 流程配置 • 数据层 • 定义数据结构 • 需要存储结构的支持 • 预留数据表字段 • 应对不同用户的需求
小结 • SaaS的基本架构 • VSBD四层 • SaaS的关键技术 • 对应于VSBD四个层面:呈现技术、调度技术 • 用户管理 • 个性化配置