【系统分析师之路】第七章 系统配置与性能评价

【系统分析师之路】第七章 系统配置与性能评价

重要知识点:基准程序测试,计算机性能优化,性能评价,负载均衡,数据备份,MIPS,可靠性分析与设计,系统容错(N版本程序设计,恢复块方法,防卫式程序设计),系统恢复。

  •  基础概念

【系统分析师之路】第七章 系统配置与性能评价_第1张图片

本章节的主要内容分三块:性能指标,性能设计(阿姆达尔解决方案),性能评价方法。
计算机字长:32位,64位表示的是什么?表示的是单次操作中对32个bit位的处理。

固有名词 说明
故障响应时间 是指从出现故障到该故障得到确认修复前的这段时间。该指标一般是用来反映服务水平的。
吞吐量 在给定的时间内,系统的吞入能力与吐出能力是多少。计算机的吞吐量主要取决于内存的存储周期。吞吐量是指单位时间内系统所能完成的任务数量。
响应时间 用户发出完整请求到系统完成任务后给出响应的时间间隔。
系统可靠性 系统在规定的时间内及规定的环境条件下,完成规定功能的能力,也就是系统无故障运行的概率。
系统性能设计 系统分析与设计实际上是一种平衡设计,需要设计师在各种功能性需求和非功能性需求(性能需求)上做妥善的选择。
系统调整 是一项循环进行的工作,包括收集,分析,配置和策四4个反复的步骤。
阿姆达尔解决方案 系统中对某部件采用某种更快的执行方式,所获得的系统性能的改变程度,取决于该组件被使用的频率,或所占总执行时间的比例。
负载均衡 是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位
性能指标 性能指标是评价一台计算机的性能,指标和标准

【系统分析师之路】第七章 系统配置与性能评价_第2张图片

  • 可靠性分析与设计

故障会影响到整个系统的可靠性。故障的表现形式有三种:永久性(稳定长期的失效),瞬时性(就那一瞬间有问题),间歇性(有的时候有问题有的时候没有问题)。对架构而言,可靠性是一个非常重要的课题。如果系统可靠性不行的话,那么他是基本失败的。对于架构而言 可靠性是一个非常重要的主题,对输入的内容进行相关的验证就是可靠性的一种体现,加强软件的评审及设计方面的工作,还有容错技术,都可以决定系统的可靠性。

【系统分析师之路】第七章 系统配置与性能评价_第3张图片
在故障模型中,我们平常接触到的更多的是:软件故障和软件差错。
故障往往是固件产生的失效,故障的表现形式有三种,永久性,间歇性,瞬时性。
可靠性和可用性一般很少区分,但是在考试过程中,有至少数情况需要区分这两个概念。
可靠性:要减少系统中断的次数。
可用性:减少灾难中用于恢复的时间。
可靠性和可用性几乎没有什么区别。但一个强调的是次数,一个强调的是持续的时间。
失效率的计算是一个近似的公式,所以有可能是不那么准确的。
并联系统下有一个系统能够正常运行,整个系统就能正常运行。
1-可靠度=失效率。

【系统分析师之路】第七章 系统配置与性能评价_第4张图片

【系统分析师之路】第七章 系统配置与性能评价_第5张图片

  • 系统恢复

系统恢复分为前向恢复后项恢复
后项恢复:系统恢复到前一个正确状态。继续执行。屏蔽不可预见的错误。
前项恢复:是当前计算继续下去。把故障恢复成连贯的正确状态。你不系统当前不连惯的情况。适用于可预见的易定义的错误,他将一些变量进行修改和处理,且这个恢复过程由程序设计者的设计。

  • 系统容错

输入的正确性检查,加强软件评审,加强软件设计的工作都可增加软件架构的可靠性。它包括避错技术和容错技术两种。
即使把避错机制做到了极致,也不能保证可靠性一定就高,因为还需要有容错技术。
容错机制就是把错误的内容给包容掉。容错基本的思想就是通过冗余来实现的。
结构冗余(硬件冗余,软件冗余)
信息冗余(效验码)比如CRC码,就是增加一些,我们原本不需要的信息用来判断原始的信息有没有发生变化。
时间冗余(重复多次进行相同的计算,类似于验算)。
冗余附加(为实现上述冗余技术所需资源和技术,所需的资源和技术)
静态冗余:被动冗余,模冗余系统,通过表决和比较来屏蔽掉系统的错误
动态冗余:备份系统,集群系统。检测定位问题,进而对故障进行恢复。
容错技术:一旦出现问题了 我可以包容你。容错的基本思想就是用冗余来实现。冗余技术包括:结构冗余,信息冗余,时间冗余,冗余附加。

【系统分析师之路】第七章 系统配置与性能评价_第6张图片

【系统分析师之路】第七章 系统配置与性能评价_第7张图片

双机热备模式的缺点:高性能服务器一般只用一台。
双机互备模式:各自备份另一台服务器的服务。且一旦一台服务器失效时,则启动另一台服务器。互备的利用率就高了。
双机双工:两台服务器同时做的是相同的工作。他是集群技术的雏形

  • 集群系统

云计算都是在集群系统之上发展而来的。
高性能主机系统 PK 集群系统
可伸缩性,高可用性,可管理性,高性价比,高透明性。
基于DNS的负载均衡:通过解析DNS,实现分流。从而达到负载均衡。
基于NAT的负载均衡:基于IP地址的映射。
基于特定软件的负载均衡:使用了网页重定向技术。

【系统分析师之路】第七章 系统配置与性能评价_第8张图片

  • 系统容错之防卫式程序设计

对于程序中存在的错误和不一致性,通过程序中包含的错误检测代码和错误的恢复代码。使得错误发生程序就能消除错误状态。并恢复到一个已知的正确的状态中。简单来说就是含有try catch的程序就是防卫式程序。防卫式程序设计的实现策略:错误检测,破坏估计,错误恢复。

  • 系统容错之N版本程序设计

多个模块做的事情可以是完全一样的。收集各个模块的运行结果然后进行表决。N版本中需求规格,说明书已经有了差异。
N版本程序设计在普通的应用软件中几乎没有应用到。N版本程序设计普通的软件开发中基本不会用到。相比恢复块,N版本的实时性更强。恢复块方法其实在软件领域也不是很常见,最常见的还是防卫式程序设计。

  • 吞吐量

在实际应用中,用户所关心的往往不是计算机硬件系统的吞吐量,而是整个计算机系统包括软件和硬件的吞吐量。 

  • 负载均衡

每台服务器都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀地分配到对称结构中的某一台服务器上,而接受到请求的服务器独立地回应客户的请求。目前常用的负载均衡技术有:基于DNS的负载均衡,代理服务器负载均衡,地址转换网关负载均衡,协议内部支持负载均衡,NAT负载均衡,反向代理负载均衡,混合型负载均衡 

  • 故障响应 

【系统分析师之路】第七章 系统配置与性能评价_第9张图片

【系统分析师之路】第七章 系统配置与性能评价_第10张图片

MTTF(平均无故障时间):运行了10,000个小时出现故障,修复以后机器又运行了5000个小时;这样子,平均无故障时间就是7500个小时。
MTTR(平均故障修复时间):系统出现故障,然后对故障进行修复,所需要花费的时间。
MTBF平均故障间隔时间:MTTF+MTTR
在实际应用中MTTR是一个很小的值。所以通常认为MTBF约等于MTTF 

平均无故障时间 MTTF(Mean Time To Failure) 定义为从t=0时到故障发生时系统的持续运行时间的期望值。
平均故障修复时间 MTTR(Mean Time To Fix) 修复率是指单位时间内可修复系统的平均次数。MTTR=1/修复率
平均故障间隔时间 MTBF(Mean Time Between Failure) MTBF = MTTR+MTTF。
系统可用性 - MTTF /(MTTF+MTTR)×100% 在某个时间点上程序能够按照需求执行的概率

计算机系统是一个复杂的系统,而且影响其可靠性的因素也非常繁复,很难直接对其进行可靠性分析。但通过建立适当的数学模型,把大系统分割成若干子系统,可以简化其分析过程。 

【系统分析师之路】第七章 系统配置与性能评价_第11张图片

  • 阿姆达尔解决方案

以下的两个公式经常要考查,所以需要掌握。系统由各个部件组成,提升每个部件的话,成本会相当的高。那么就提升部分的部件来加速系统的性能。加速比:系统不进行优化和进行优化的比值。

 

  • 性能评价方法

【系统分析师之路】第七章 系统配置与性能评价_第12张图片

性能评价方法 性能评价方法的说明
时钟频率法 386,486,奔腾就是时钟频率。它只适用于最早的微型机。因为当时最大的频率就是CPU的时钟频率。※1
指令执行速度法 单位时间内能够处理指令的数量。表示机器运算速度的单位是MIPS。使用加法指令的运算速度来衡量。
等效指令速度法 又叫做吉普森混合法。通过各类指令在程序中所占的比例进行计算得到(大致的使用频率)。※2
数据处理速率法 它是主要针对CPU和内存数据处理速度进行计算而得出。除了考虑运算能力,它还考虑了与存储器的交换性。PDR越大,机器的性能就越好。
综合理论性能法 美国政府为了限制高性能计算机的出口,考虑每一个处理部件计算单元的有效计算率。而不光光只考虑CPU和存储这些的东西。
基准程序法 可以变化多样,我要测哪一块的性能,就用什么样的已经编排好的程序来运算,然后算出一个值拿它去横向比较。其实就是跑分软件。

※1:现在时钟频率法已经基本被淘汰。比如安卓手机8核,苹果手机双核,但是它们的速度差不多,原因是没有参照其他部件的速度。
※2:采用等效质量速度法对某些程序来说可能严重偏离实际,尤其是对复杂的指令集,因为某些指令的执行时间是不固定的。

指令执行速度法的单位:MIPS;它表示每秒钟可以执行的指令的数目,以百万计。

安卓手机8核,苹果手机双核。但是性能却差不多,这说明时钟频率高并不代表性能就好

  • 可靠性分析中的串联系统和并联系统

串联系统必须所有部件都正常运行才可以,串联系统的可靠度就是R1*R2*R3,计算失效率的公式就是R1+R2+R3,但这算的是近似率。并联系统的失效率是当且仅当所有部件都失效的时候,才会失效。1减去可靠度再乘以并联的数目,最后再用1去减掉他的值,得到最后的可靠值。

你可能感兴趣的:(系统分析师,系统分析师之路)