如何构建企业云平台.ppt

上传人:本田雅阁 文档编号:2612968 上传时间:2019-04-19 格式:PPT 页数:66 大小:6.70MB
返回 下载 相关 举报
如何构建企业云平台.ppt_第1页
第1页 / 共66页
如何构建企业云平台.ppt_第2页
第2页 / 共66页
如何构建企业云平台.ppt_第3页
第3页 / 共66页
亲,该文档总共66页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《如何构建企业云平台.ppt》由会员分享,可在线阅读,更多相关《如何构建企业云平台.ppt(66页珍藏版)》请在三一文库上搜索。

1、 2012 IBM Corporation 童景文,技术架构师 景文童 大中华区软件集团 IBM软件CTO论坛 如何构建企业云平台 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 2 议程 现状分析; 如何架构和建设; 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 3 传统的建设方式 每建设一套业务应用系统基本上都要购买新的硬件设备(例如服务器、存储等)和平台 系统软件(例如数据库、中间件等)。带来了大量的硬件资源的浪费(例如大量的服务器利 用率低下、存储利用率不高和管理复杂)和占用大量的空间

2、、电力的浪费、运维成本的提高 .对于一些高负载和高数据量的应用系统,我们对硬件资源的要求是按照此应用系统高峰值 的需要来进行购买以应用此应用的需要,但是此应用的高峰期是具有周期性的。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 4 传统的建设方式示例图 OA 数据库 服务器 存储备份 系统管理 中间件 邮件 数据库 服务器 存储备份 系统管理 中间件 CRM 数据库 服务器 存储备份 系统管理 中间件 客服 数据库 服务器 存储备份 系统管理 中间件 业务支撑 数据库 服务器 存储备份 系统管理 中间件 网管 数据库 服务器 存储备份 系统

3、管理 中间件 网络安全网络安全网络安全网络安全网络安全网络安全 系统集成 系统建设 系统维护 系统采购 系统设计 1.业务实现周期长; 2.系统独立建设,资源浪费严重; 3. 维护效率低,软硬件设备型号多 ; 4. 资源使用不均衡 系统集成 系统建设 系统维护 系统采购 系统设计 系统集成 系统建设 系统维护 系统采购 系统设计 系统集成 系统建设 系统维护 系统采购 系统设计 系统集成 系统建设 系统维护 系统采购 系统设计 系统集成 系统建设 系统维护 系统采购 系统设计 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 5 数据孤岛和应用竖

4、井 应用系统按照传统的方式进行设计和开发,从而形成一个个的数据孤岛、应用的竖井等。 以至不能形成完整的数据视图(例如相互有关联的数据分散于不同的应用系统,数据编码标 准不一致,数据不一致和不可信等;让进行数据的整合和数据分析基本上不太可能)和应用 系统集成复杂度和难度很高(没有好的设计规范和架构以及代码质量,基本上代码重用程度 都很低;从界面集成、数据集成、应用集成这三个方向来做都很困难);甚至出现无法集成 或者为了集成而集成纯粹完成任务而已)。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 6 性能和可靠性 对于一个性能要求很高的系统(例如

5、高负载量和高数据量的系统)我们会利用大量的硬件 资源和相应的集群技术等技术进行相应的数据分区、集群和均衡负载来应对峰值的访问情况 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 7 完整地端到端监控 没有一个完整地、 端到端的整体IT系统监控解决方案,无法对我们整体IT系统(例如主机、 存储、网络、数据库、应用服务器、应用)的运行情况进行一个很好的监控,通过监控产生 的数据来指导我们优化我们的IT系统。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 8 我们需要一个最佳实践 我们存在很多的应用

6、软件开发商,每个应用开发商都有自己一套设计思路和想法;这给我 们带来了一定混乱,并且对各个应用软件开发商的协调和控制非常的困难。所以我们需要一 个自己的应用平台,此应用平台需要借助产商外脑的成熟解决方案和人才的力量形成,从而 形成一个较好的平台,从而给我们以后的应用系统的建设设计出相应的模板或者最佳实践: 例如应用软件开发和设计规范、应用软件参考架构、应用软件用户体验设计规范、业务信息 编码标准、应用软件部署和维护规范等。从而让以后开发的应用系统更加的稳定可靠、性能 较好、易用性较好、维护方便等. 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅

7、 9 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 10 议程 现状分析; 如何架构和建设; 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 11 在现今云计算风起云涌,主要分成三种模式Saas,Paas,Iaas;当然在几种模式基础上发展出 了很多的的模式,但是核心的还是Saas,Pass,Iaas,示例简图如下所示。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 12 云计算涵盖了硬件(服务器、网络、存储、终端)和软件(例如Google的

8、GFS、 Mapreduce、BigTable、Megastore等技术和Google Application Engine;IBM 的 BigInsight、GPFS On Hadoop等技术和产品等等)。云计算不仅仅是商业模式上的变革,并 且也是技术模式上的变革;对于主流的云计算三种模式(Saas、Paas、Iaas),Paas模式的云 计算对IT产商和客户来说最具有价值,必将是将来几年的重点发展方向,而Paas模式的云计算必 然是一个重大的技术变革(正如应用软件架构从C/S架构过渡到B/S架构一样)。Paas模式的云 计算应该是一种大规模地、可靠、高效、稳定的服务器集群系统,它应该是能够

9、帮助我们的客 户和开发人员解决Big Data 、Big Concurrent User、Better User Experience、Better Develop&Deploy Application等一系列问题,将来的应用软件架构必然是Paas模式的云计算 架构 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 13 定义:我们必然需要利用相应的新技术(服务器虚拟化技术、存储虚拟化技术、网络虚拟化技 术、应用虚拟化技术、高速内存缓冲技术、NoSQL技术、OpenID技术等等)、吸收和补充以 及裁剪相应成熟可靠的原有技术(例如J2EE架构、SO

10、A架构等等)建设一个“较大规模的,可扩 展和高性能,成本可控,易运维,易访问,易设计和开发,但是高可靠性的集群系统“。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 14 特点: 1、是一个软硬件结合的系统,它需要依赖一个先进的硬件架构、软件系统底层架构以及应用开 发设计规范和架构。它吸收和补充以及裁剪相应成熟可靠的原有技术(例如J2EE架构、SOA架 构等等)。 2、提供了一个完整的开发堆栈,使用熟悉的技术和相应的新技术,成熟可用的数据标准和规范 ,成熟可用的可重用服务来构建和托管网络应用程序。 3、可自动伸缩:对于应用开发商开发的应用,应

11、用开发商的只关注于在它的开发和设计规范的 要求下编写他们所需要的应用逻辑以及在它的部署规范的要求下部署他们的应用;它将根据应 用的需要自动分配出相应的计算资源并利用相应的技术来满足应用的需要。为了让应用开发商 的应用能够在高性能的压力下(例如高负载和高数据量)能够健康运行,无需应用开发商关心 系统管理、提出应用程序的新实例(例如进行集群以提高性能)、数据库分片或购买计算机。 大幅提高硬件资源的利用率、降低空间的占用和降低电力的损耗。 4、可靠性、性能和安全性:它将实现高度可靠、高性能的基础设施结构,从而可以大规模运行 可扩展、高性能、高安全的应用系统。 2011 IBM Corporation

12、 IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 15 特点: 5、成本可控:通过它内置的完整的端到端的IT监控模块,可以完整的监控整体的硬件情况(例 如服务器,存储,网络的使用情况,数据库系统和中间件系统的使用情况);监控各个应用的 运行情况(例如应用的请求负载情况,瓶颈在哪,数据存储容量消耗情况等等)。通过这种自 动化的监控模块,从而让我们的运维人员更加快速和方便的运维我们的系统。 6、管理可控:通过在它里面提供的一系列的开发设计和架构规范,可重用的服务等,从而可以 让各个应用开发商开发的应用比较完整地遵循我们的要求,降低和协调成本可提高了开发效率 。 7、消除数据孤岛和应用的竖井

13、:对于应用系统所需要的数据库系统以及数据服务都是由它统一 进行提供,应用开发商的应用系统不再关心他们的数据存储在哪、怎么存储等等以及数据的标 准和格式将统一;从而不再会存在数据不一致、数据分散、无法形成完整的数据视图以很难进 行数据分析的问题。对于应用系统为了某些目的需要与其它系统进行交互以完成应用的集成, 相应的集成服务将由它统一进行提供,所以所有的应用系统天然是一个统一的整体不再是一个 个应用的竖井。 8、客户体验至上,适应频繁的应用发布与线上和系统变更,以及管理代码库中的大量分支。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 16 硬

14、件-服务器/存储/网络 Iaas- Iaas云计算平台管理:服务器虚拟化、存储虚拟化、网络虚拟化、自动化 数据-关系型数据库、NoSQL etc 应用运行支撑-J2EE应用服务器、MQ、ESB、WorkFlow 、Hadoop、Web服务器 etc 应用-核心支撑应用(统一用户管理中心、数据开放平台、监控),各种业务应 用 etc 接入端-PC、智能手机、智能平板 等 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 17 我们通过Iaas模式,把我们数据中心中的硬件全部给虚拟化形成一个虚拟化的资源池,从 而更好地支撑我们的上层即Pass和Saa

15、s 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 18 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 1、对于服务器这一块我们限制必须采用刀片式/机架式的服务器(例如X86架构);从而可以降 低服务器的体积,提高空间利用率。 2、对于服务器中所包含的存储盘,我们建议以采用SSD技术的固态硬盘和采用HDD硬盘混。 3、服务器所包含的芯片的主频越高越好和芯片的CORE数目越多越好。 4、服务器将进行堆叠放入机柜/刀片中心,机柜/刀片中心至少要放10台以上的服务器,当然放的 越多越好例如可以放40

16、-80台;在机柜中的服务器以高速以太网交换联络起来。 5、多台机柜/刀片中心形成一个比较大规模的服务器集群,机柜/刀片中心用相应的交换机联络 起来。 19 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 20 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 21 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 22 ProcessorsMemoryDisk SSD Very, very, very, very, very fast Very, v

17、ery, very fast Very, very slow comparatively Fast 10s ns100 ns200,000 ns 1,000,000 - 8,000,000 ns Access Speed 1 second 33 minutes 12.5 hours Human Time Context 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 23 1.万兆以太网 2.Infiniband 网络,此网络技术特别适合于关系数据库集群机制中(例如DB2 PureScale) 。 2011 IBM Corporation IB

18、M SWG 未经IBM同意,禁止外泄以及与他人传阅 24 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 25 软件基础设施架构最重要的是数据架构、然后再是应用架构;把这个架构做好也是一是为 了解决数据孤岛、应用竖井的问题,二是提供各种各样的服务例如数据存储服务(SQL数据服 务、非结构化信息数据服务等)、消息服务、应用集成服务、流程服务、安全服务、监控服务 等,三是让应用开发更加简单,四是能够适应大并发和大数据量的挑战。不把Pass给建设好, 就想要去把Sass给建设好是不大可能的,特别是在大并发、大数据量等峰值压力的挑战下提供 给外部用户使

19、用的Sass应用必奔溃无疑。并且一个真正的云计算平台是逃脱不了一定要能够面 对大并发、大数据量的挑战的。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 26 我们会部署很多应用,所以这样的话对于应用的快速部署的关注点在于应用的可靠运行、 快速开发和部署、机器资源的充分利用、以及方便的运维等问题;对于这个时候我们应该主要 采用Iaas云计算架构(即很依赖于硬件虚拟化技术)和部分采用Pass云计算架构来解决(这个 可以参考IBM IWD) 1.重点采用Iaas 云计算架构中的硬件虚拟化技术等技术(服务器虚拟化、网络虚拟化、存 储虚拟化)以提高硬件

20、的利用率、降低机房占用空间和功耗。 2.快速和方便地给应用提供应用所需要的服务器资源(VM)、网络资源、存储资源。 3.快速和方便地给应用提供应用所需要依赖的平台软件资源,例如数据库系统(DB2)、 J2EE应用服务器(WAS)、WEB 服务器(IHS)等。 4.快速和方便地自动地把应用部署到相应的硬件环境中。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 我们一定要坚信特别是信息架构师更要坚信,处于大多数系统核心的是数据,而不是算法 (或者称之为代码)。随着互联网(固定互联网和移动互联网)技术和物联网技术的发展,最 终用户产生和消费的数据将

21、比以往更加推动信息技术的使用,我们业务流程的运转需要各个环 节的人员产生和消费相应的数据,数据需要更加地及时、有效、精确;我们的业务的运营越来 越离不开相应的数据。 在任何情况下我们需要通过Web来呈现给用户使用的所有功能归根结底都是一个界面一个 具有较好用户体验的界面来更好地产生和消费数据,以促进人与人之间的协同、人与机器之间 的协同以及业务流程更加高效、精准的运转从而提高企业的经营效率和效益。这些数据就构成 了我们企业应用信息系统的核心价值,不论这些数据是合作伙伴创建的还是我们的一线员工和 管理层所创建的。市场需求的变化促进了业务和业务流程的变化和促进了人的变化,促进了数 据的变化即需要创

22、建和消费、利用更多类型、更多种类、更大量的数据,数据推动了我们需要 更多的产品/应用,所以架构师、开发人员将会围绕数据创建了传统的“n”层软件栈(数据存 储层、业务逻辑层与显示层)即我们的应用都是由数据来驱动的。 27 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 问题: 如下图按照传统的方式建设的方式必然产生数据孤岛,能够被共享的业务核心数据被分 散到各个应用,并且各个应用的开发商很多不一样的甚至是同一个开发商由于各种问题导致数 据编码标准不一致,数据不一致和不可信等问题;这些问题导致不能够形成完整和精准的数据 视图,导致很难进行数据分析和

23、支撑业务流程的运营。 28 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 目标:我们需要采用新的思路,即把在企业中能够被支撑各个业务场景的业务应用系统所共享 的基础数据全部放入到统一的数据存储池中,并且让这个统一的数据存储池提供相应的服务API 让各个业务应用使用(查询、增加、修改等),各个业务应用系统不再保存和维护这些数据, 与各个业务应用私有相关的数据有相应的各个业务应用进行维护和控制。这个数据存储池我们 称之为数据开放平台,统一相应的编码规则、数据元定义等等。 29 2011 IBM Corporation IBM SWG 未经IBM同

24、意,禁止外泄以及与他人传阅 在我们建设支撑企业业务运营的业务应用当中,我们不仅仅需要管理关系型的业务数据,还有 许多非关系型的数据需要进行管理(例如office文档、图片、音频/视频等),我们不能把这些 数据信息由不同的单独业务应用进行单独管理,我们应该统一管理起来提供服务器让不同的业 务应用进行利用(存储、提取等)。 30 Distribute Simple Storage Services(DS3 ) Simple Storage Service Simple Storage Service Simple Storage Service Simple Storage Service Sim

25、ple Storage Service Simple Storage Service 上层的应用或者服务 API/Rest Services/http url/SOAP Index Service API/ Rest Services/SOAP Not SQL 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 很经典的一个数据分析场景的分层实现设计架构 31 业务系统生产数据库层ODS层数据仓库和数据集市层Cognos UI 导入/录入 ETLETL 批量导入和基于日志 实时复制 营销系统数据库 专卖系统数据库 其它业务系统数据库 ODS 数据库

26、 数据仓库 Cognos Cube View 数据集市 ETL XLS数据 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 32 内存SSD高端HDD低端HDD 特点: 1.如果每天产生的增量数据不大(例如几十个G以下的话),在一定机器配置的情况下 ;进行相应地装载、清洗、数据挖掘等工作没有多大的问题。 2.如果数据量非常之大的话,一般会采用大机器、大内存、SSD、高端存储、高速网络 (万兆网/Infiniband网络)来进行;但是成本可能非常巨大(例如硬件成本、正版的软件 成本);并且还会出现数据量上到一个量级别后甚至会出现硬件再好也无法应对

27、。 3.实施的架构其实是非常复杂的 4.在大部分客户场景(很多客户没有那么多的数据)的情况下用此架构是合理有效的 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 33 业务数据 库( Oracle) 业务数据 库(DB2 ) 业务数据 库(MS SQL) 业务系统数据 XLS数据 批量导入和 基于日志实 时复制 数据存储区(数据仓库 、数据集市) 录入和导入 数据分析区-Cognos/SPSS (CubeView) ETL 改良后以适应Big Data 的BA系统技术架构 2011 IBM Corporation IBM SWG 未经IBM同意

28、,禁止外泄以及与他人传阅 34 改良后以适应Big Data 的BA系统技术架构-Netezza简介 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 35 特点: 1.架构更加简单。 2.性能足够强劲:处理更大的数据量、更快的装载、更快的处理 3.它更适合SQL场景 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 在我们的企业应用系统中,不仅仅是关系型数据还存在大量的非关系型数据都需要进行分析 ,例如日志、Office文档等等;并且在很多数据量(关系型和非关系型)增长到一个让人非常恐 怖的时候(

29、例如一些互联网应用),在做数据分析的时就必须采用Hadoop框架进行大规模的 机器集群来进行处理。 36 引入Hadoop框架:IBM InforSphere BigInsight 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 37 业务系统数据源 增量实时装 载/全量/非 实时装载 Hadoop集群: IBM InforSphere BigInsight/ETL 计算结果(CDW,DM) 结果装载 关系型数据库数据 非结构化数据 半结构化数据 引入Hadoop框架:IBM InforSphere BigInsight DB2 DB2 10将

30、能与Hadoop( IBM InforSphere BigInsight)无缝紧密的进行集成 数据可视化 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 38 通过上面的数据架构的内容阐述,我们都知道应用都是围绕数据来进行创建的,数据分成 两大类:1.可能被在整个企业范围内很多应用所共享的数据,这个称之为主数据。2.被自身应 用所控制的私有数据,即应用数据。在数据架构所阐述的内容将会演化出一个数据开发平台这 个核心应用系统以及其它重要的核心应用系统,并且在我们企业当中也会自己的各种不同地业 务应用系统;这些应用系统中可能会存在很大数据量和很大并

31、发访问量的应用系统等等。必然 也需要遵循以下几个方面。在我并且我们构建相应的WEB应用系统中,会使用J2EE架构/.NET 架构/LAMP架构之一或者其中的混合。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 39 架构目标与挑战 每个目标背后面临着技术、设计、维护等诸多方面的挑战。 而目标本身的期望值也会根据实际情况进行调整,这也意味着架构建设是个不断调整的过程。 负载均衡 数据备份 异地容灾 。 高速缓存 并行计算 异地镜像 。 开发框架 多层设计 业务分割 。 大数据、大并发 并且对于一个大型应用来说,大并发、大数据量的高性能和可靠性的

32、架构设计是最重要的;只要这个架 构设计和相应的代码质量较好就可以满足所有的不同类型大型网站的要求。并且为了支撑大并发、大数 据量的高性能和可靠性的思想都是比较类似的 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 40 Step1Web动静态资源分离及其与DB物理分离 n优点:“简单”、安全性提高 n缺点:存在单点,谈不上高可用性(high availability架构目标) n技术点:应用设计要保证可扩展(framework很重要Spring)、Web Server动/静态资源分离 Web Server(ApacheNginxIISWAS)、

33、 Database Server(RedisDB2) 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 41 Step1技术点Web动静态资源分离 img,doc,js,css等静态资源使用单独的Web HTTP Server处理请求 动态页面静态化处理 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 42 Step2.1 采取缓存处理 n优点:简单有效、维护方便 n缺点:依然存在单点 n技术点:客户端(浏览器)缓存、前端页面缓存、页面片段缓存、本地数据缓存/数据库缓存 减少对网 站的访问 减少对

34、Web应 用服务器的请求 减少对数据库 的查询 减少文件系 统I/O操作 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 43 Step2.1技术点客户端(浏览器)缓存 技术点说明 根据HTTP协议特性,修改Header参数(Cache-Control、Expires、Pragma、Last- Modified、Etag),让浏览器来缓存页面(一些优秀开发框架会对此做透明的封装, 例如:Beetle)http:/www.w3.org/Protocols/rfc2616/rfc2616-sec14.html 使用HTTP1.1协议,由于http

35、pipelining技术特性,能够使用get请求的决不采取post 请求 为了节约带宽,压缩页面(Content-Encoding: gzip);页面各个元素能“小”即“ 小”,例如:js包压缩,js合并,图片压缩等 会话状态信息采取Cookie代替传统使用服务器Sessions对象存储习惯做法;使用Ajax 实现页面局部刷新 如果可能,可采取浏览器插件技术突破浏览器功能限制,将原本在服务 器端运算,尽量迁到浏览器端。ActiveX/Applet/Flash/. HTML5 最值得期待,她的出现必定改变整个Web世界 能够让浏览器缓存的数据一定要缓存;浏览器能够处理的 运算,决不放在服务器端来

36、处理。 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 44 Step2.1技术点前端页面缓存 采用具备缓存功能的http反向代理服务器作前端页面缓存器, WebSphere Edge Component (商业) 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 45 Step2.1技术点页面片段缓存ESI(Edge Side Includes) ESI需要服务器端支持,常见apache(mod_esi)、WebSphere Appliication Server、 JSP标签库(JESI)等。

37、 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 46 Step2.1技术点本地数据缓存 需要从数据库系统和Web应用服务器两个层面考虑缓存优化 技术点说明 关系数据库系统(如:DB2)Query Cache策略:一般以sql为 key来缓存查询结果,尽量不要拼sql,使用 PreparedStatement的“?”模式sql;Query Cache大小要 根据数据库系统具体情况合理设置,过大只会浪费内存,参考 值:128M 关系数据库系统Data Buffer策略:就是数据库数据内存缓存器 ,其访问命中率决定数据库性能,可根据实际物理内存大小

38、适 量增大,如:DB2建议buffer值为物理内存60-80% 应用服务器Cache包括:对象缓存(例如:对象线程安全,做 成单例),更新频率不大数据考虑缓存(如:基表数据、配置 文件信息),考虑使用线程池,对象池,连接池等 常见java解决方案:WebSphere Application Server 动态缓 存 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step2.2技术点WEB HTTP Server 服务器HA(Active-StandBy)、应用服务器集群、数据 库集群 当然Web 服务器可以采用Apache Http Serv

39、er/Nginx 应用服务器可以采用 WAS 数据库服务器可以采用DB2 PureScale 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step3增加机器做WEB HTTP Server 服务器集群、数据库读写分离 n优点:Web HTTP Server 集群能够接入更多的并发请求,数据 库扩展更好(读写分离);从而提升系统整体性能 n缺点:读写分离,增加程序难度,架构变复杂,维护难度增加 n技术点:负载均衡、DAL、数据库读写分离 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step

40、3技术点Web HTTP Server 集群负载均衡 类型说明 DNS负载均衡实现简单、有Cache缺乏灵活性,但对分区域(如构建CDN方 案)访问简单有效 反向代理软件HAProxy、Nginx、Apache、Lighttpd等 硬件产品F5、NetScaler等 LVS(Linux Virtual Server)http:/www.linuxvirtualserver.org/ SMART Client自己写代码某些情况下简单有效 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step3技术点数据库读写分离及DAL 读写分离逻辑分批 负载

41、均衡 失效转移(failover) 数据库分区透明支持 两大实现模式:独立Proxy服务器;单独 API库文件 各个数据库厂商都有自己复制方案(例如基于 日志实时复制)常见通用方案,CDC 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4CDN、分布式缓存、分库、NoSQL、大数据 n优点:异地缓存有效解决不同地方用户访问过慢 的问题;分库策略带来网站性能整体提升等等 n缺点:成本大幅增加,架构进一步复杂化,也维 护难度进一步增大,架构开始臃肿了 n技术点:CDN、分布式缓存、Shard分库、 NoSQL、重新思考硬件体系、大数据 2

42、011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点CDN nCDN(Content Delivery Network)内容分发网络 n将网站的内容分发到最接近用户的网络“边缘”,使用户可以就近 获取,从而解决互联网网络拥挤的状况,提高用户访问的响应速度。 n适合静态内容很多(如:静态页面、图片、视频等)及页面内容实 时性要求不高的网站,如:新闻类门户网站 nCDN构建可以做的很简单,也可以很复杂,主要根据自己网站实际 情况而定 WebSphere Edge Component 2011 IBM Corporation IBM SWG

43、 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点分布式缓存 n本地缓存性能优秀,但容量有限,无伸缩性 n采用分布式缓存方案突破容量限制,具备良好伸缩性;但分布式涉 及远程网络通信消耗其性能本地缓存来得优秀,并可涉及节点状态维 护及数据复制问题,其稳定性和可靠性是个挑战。 n目前流行分布式缓存方案:memcached、membase、 redis,WebSphere extreme Scale 等,基本上当前的NoSQL方案都 可以用来做分布式缓存方案 WebSphere eXtreme Scale 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及

44、与他人传阅 Step4技术点分布式缓存 DB2 Not SQL:KV 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点分布式缓存 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点分库 n读写分离(简单有效,前面已介绍) n垂直分区(功能域)和水平切分 用户信息产品信息交易流水信息客户信息业务类型信息 功能域 用户信息1 水平切分(sharding) 交易流水信息 1 交易流水信息 2 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外

45、泄以及与他人传阅 Step4技术点分库 n垂直分区 良好的松耦合的模块化设计是垂直分库的前提 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点分库 n水平分区(Shard) 分片Key识别(划分检索依据)是关键 是否还有其它招?用NoSql数据库部分替换关系数据库 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点NoSQL 随着Web 的发展,电子商务和社交计算的兴起所引起的企业里不受控的非结构化并且面向信 息的数据大爆炸和那些超大规模和高并发的应用场景下,该如何

46、应对呢?企业确实不需要关 系型数据库来管理这些数据,因为关系型数据库的特点决定了它不适用于这些数据的性质和 使用方式。关系型数据库针对这些信息来说确实不是银弹或者称之为万金油的解决方法,最 关键的是关系型数据库已经显得力不从心,暴露了很多难以克服的问题:(1)对数据库高并 发读写的需求(2)对海量数据的高效率存储和访问的需求(3)对数据库的高可扩展性和高 可用性的需求。所以我们需要分布式的非关系型数据库(即NOSQL,它的意思是对于我们的 应用类型,信息类型Only SQL是不够的,所以需要Not Only SQL)。 2011 IBM Corporation IBM SWG 未经IBM同意,

47、禁止外泄以及与他人传阅 Step4技术点NoSQL NOSQL is simply Not Only SQL! 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 Step4技术点NoSQL 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 NOSQL特点 它们不是关系型数据库,它也不是什么类型应用都能用有自己的使用场景 它们可以处理超大量的数据 它们运行在较为便宜的服务器集群上 它们打破了性能瓶颈 没有过多的操作。 缺点:现在基本上都是开源产品还不是特别成熟。 Step4技术点NoSQL 2011 IBM Corporation IBM SWG 未经IBM同意,禁止外泄以及与他人传阅 NoSQL支持率调查报告 Step4技术点NoSQL 2011 IBM Corporation IBM SWG 未经IBM同意

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1