负载均衡服务课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《负载均衡服务课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 负载 均衡 服务 课件
- 资源描述:
-
1、第十一讲第十一讲 负载均衡服务负载均衡服务一、服务性能一、服务性能二、常用分析方法二、常用分析方法三、负载平衡三、负载平衡内内 容容一、服务性能一、服务性能性能的重要性性能的重要性:核心质量属性之一核心质量属性之一正确正确健壮健壮安全安全 高效高效易维护易维护什么是高效性:什么是高效性:包括时间高效性与空间高效性包括时间高效性与空间高效性时间高效性主要是指系统响应时间小、吞吐率高时间高效性主要是指系统响应时间小、吞吐率高空间高效性主要是占用资源空间高效性主要是占用资源(例如:例如:CPU、内存、内存、数据库连接、网络连接等等数据库连接、网络连接等等)少少类似内容还包括:同时服务的客户数目等类似
2、内容还包括:同时服务的客户数目等由于早期由于早期CPU的计算能力有限的计算能力有限内存容量也有限内存容量也有限因此程序的效率问题在早期很受重视:因此程序的效率问题在早期很受重视:算法复杂性的研究长期以来是计算机科学算法复杂性的研究长期以来是计算机科学的重要内容的重要内容衡量一个算法好坏的主要标准是时间开销衡量一个算法好坏的主要标准是时间开销与空间开销与空间开销仅十多年年来,对效率问题的重视程度有所下降:仅十多年年来,对效率问题的重视程度有所下降:为提高开发效率,人们往往以牺牲代码效率为代价为提高开发效率,人们往往以牺牲代码效率为代价例如大量系统软件、框架的引入例如大量系统软件、框架的引入方便了
3、应用软件的开发方便了应用软件的开发同时导致调用层次过多、系统执行效率下降同时导致调用层次过多、系统执行效率下降 只是由于硬件速度与容量提升较快只是由于硬件速度与容量提升较快盖过了软件效率的下降盖过了软件效率的下降使最终用户感觉系统速度还是增加了使最终用户感觉系统速度还是增加了为了提高用户的响应时间为了提高用户的响应时间许多系统以大量的重复冗余计算为代价:许多系统以大量的重复冗余计算为代价:为同一个用户请求创建在多个机器上的计算为同一个用户请求创建在多个机器上的计算并将最先得到的结果返回给用户并将最先得到的结果返回给用户将后续得到的结果直接抛弃将后续得到的结果直接抛弃 google:一次一次Go
4、ogle搜索所消耗的电能可以足够一个搜索所消耗的电能可以足够一个11瓦的节能灯亮瓦的节能灯亮15分钟到一个小时分钟到一个小时降低对效率的追求降低对效率的追求 是导致是导致IT系统能耗增长的因素之一系统能耗增长的因素之一随着能源问题的日趋突出随着能源问题的日趋突出这方面的研究迫切需要加强这方面的研究迫切需要加强如何提高效率?基本过程:基本过程:分析效率分析效率=发现问题发现问题=调整调整基本方式:基本方式:离线离线 在线在线二、效率的分析方法1、静态分析、静态分析2、动态测试、动态测试3、在线监测、在线监测1、静态分析v通过静态分析可以发现程序中:通过静态分析可以发现程序中:从来就不会执行的代码
5、从来就不会执行的代码(Dead Code)不会被引用的变量或者赋值操作不会被引用的变量或者赋值操作不需要的检查不需要的检查不必要的串复制不必要的串复制(strcpy)、数字转换、数字转换等等等等v然后就可以对代码进行优化:然后就可以对代码进行优化:在不改变程序语义的前提下在不改变程序语义的前提下剔除冗余的代码,从而减少内存开销,提高执行效率剔除冗余的代码,从而减少内存开销,提高执行效率2、测试这个过程需要自动化的测试工具来辅助完成:这个过程需要自动化的测试工具来辅助完成:测试工具主要用来模拟多种正常、峰值以及异常测试工具主要用来模拟多种正常、峰值以及异常负载条件负载条件从而对系统的各项性能指标
6、进行测试从而对系统的各项性能指标进行测试效率测试可以使在用户模拟的环境中进行的效率测试可以使在用户模拟的环境中进行的由于软件的运行效率与运行环境有很大的关系由于软件的运行效率与运行环境有很大的关系因此效率测试更需要在系统部署到实际环境中因此效率测试更需要在系统部署到实际环境中但还没有实际上线时进行但还没有实际上线时进行3、在线监测在系统实际运行过程中分析性能在系统实际运行过程中分析性能对效率进行监测的主要对象包括:对效率进行监测的主要对象包括:v系统的响应时间系统的响应时间vCPU负载情况负载情况v内存使用内存使用v客户连接实例数目客户连接实例数目v内部类型的实例数目内部类型的实例数目v数据库
7、连接实例数目数据库连接实例数目v等等等等三、负载平衡在由大量处理结点组成的集群系统中在由大量处理结点组成的集群系统中系统在服务过程中系统在服务过程中提高资源利用率提高资源利用率降低请求响应时间降低请求响应时间的有效手段的有效手段1、负载平衡方案、负载平衡方案 2、Web层的负载平衡层的负载平衡3、EJB层的负载平衡层的负载平衡4、动态负载平衡技术、动态负载平衡技术 内内 容容1、负载平衡方案 v负载平衡点负载平衡点v负载平衡粒度负载平衡粒度v负载平衡算法负载平衡算法负载平衡点v负载平衡点指作出负载平衡决策的位置负载平衡点指作出负载平衡决策的位置独立的负载均衡器上、服务节点自身、客户端独立的负载
8、均衡器上、服务节点自身、客户端v在多数情况下负载平衡由单个节点完成在多数情况下负载平衡由单个节点完成v单点负载平衡好处:单点负载平衡好处:便于获得系统的全局状态,作出全局一致的决策便于获得系统的全局状态,作出全局一致的决策;能实现复杂的负载平衡算法,获得最优的效果;能实现复杂的负载平衡算法,获得最优的效果;便于支持多种平衡策略,适用于不同的应用环境便于支持多种平衡策略,适用于不同的应用环境v单点负载平衡的不足:单点负载平衡的不足:负载平衡点可能成为性能瓶颈负载平衡点可能成为性能瓶颈影响系统的伸缩性影响系统的伸缩性也可能单点失效也可能单点失效v多点负载平衡多点负载平衡v可以获得比较好的伸缩性,但
9、一般仅能使用可以获得比较好的伸缩性,但一般仅能使用静态算法静态算法v存在两种类型的多点负载平衡存在两种类型的多点负载平衡一种是多个节点独立地进行决策,其综合效果取一种是多个节点独立地进行决策,其综合效果取决于单个节点的负载平衡效果与多个节点的叠加决于单个节点的负载平衡效果与多个节点的叠加效果;效果;另一种是多个节点并行地做出相同的决策,如根另一种是多个节点并行地做出相同的决策,如根据请求的源地址(或目标地址)进行静态散列以据请求的源地址(或目标地址)进行静态散列以确定服务节点,此时多个物理负载平衡点等价于确定服务节点,此时多个物理负载平衡点等价于单个逻辑负载平衡点。单个逻辑负载平衡点。v当客户
10、数量众多而又无法依赖高速硬件来完当客户数量众多而又无法依赖高速硬件来完成负载分发时,多点负载平衡可能是必须的成负载分发时,多点负载平衡可能是必须的负载平衡粒度v指负载分发(或迁移)基本单位的组合程度指负载分发(或迁移)基本单位的组合程度v对于网络层的负载平衡,基本单位是对于网络层的负载平衡,基本单位是IP数据报。一数据报。一种可能的负载平衡粒度是目标地址为同一个种可能的负载平衡粒度是目标地址为同一个IP的所的所有数据报(如有数据报(如Linux服务器集群系统的目标地址散服务器集群系统的目标地址散列调度算法)列调度算法)v对于分布对象中间件而言,基本单位是对象请求。对于分布对象中间件而言,基本单
11、位是对象请求。常见的两种负载平衡粒度是请求级与会话级。请求常见的两种负载平衡粒度是请求级与会话级。请求级(级(per-request)指每次对象调用时都作负载分)指每次对象调用时都作负载分发发v会话级(会话级(per-session)指的是仅在查找或首次调)指的是仅在查找或首次调用一个对象时进行负载决策,而后针对该对象引用用一个对象时进行负载决策,而后针对该对象引用的所有请求都被发往同一个节点的所有请求都被发往同一个节点v直观上,粒度越细,负载平衡效果越好,但用于负直观上,粒度越细,负载平衡效果越好,但用于负载平衡的开销也越大载平衡的开销也越大负载平衡算法 v具体的负载平衡实施方法具体的负载平
12、衡实施方法v根据决策时是否使用运行时刻的信息(如各根据决策时是否使用运行时刻的信息(如各节点的负载状况、请求的类型或内容),负节点的负载状况、请求的类型或内容),负载平衡算法可以分为静态算法与动态算法两载平衡算法可以分为静态算法与动态算法两大类大类静态算法v静态算法也称为非适应性算法,不使用运行静态算法也称为非适应性算法,不使用运行时刻的信息时刻的信息v常用的静态算法有轮循、随机及加权轮循常用的静态算法有轮循、随机及加权轮循 算算法(法(weighted round-robin)等几种)等几种v其中轮循与随机算法适合于所有节点处理能其中轮循与随机算法适合于所有节点处理能力相当的情况,静态加权算
展开阅读全文