yangpengli

系统性能呢个是一个系统提供给用户的准更多性能指标的混合体,它既包括硬件性能,也包括软件性能。

根据应用细化的:有整数运算,浮点运算,响应时间,网络带宽,稳定性,I/O吞吐量,SPEC-Int、SPEC-Fp、TPC、Gibson mix 等 。SPEC ---测试CPU性能 的权威。

两个分支:1.作为未来计算机技术发展的参考和规划;2.对现有系统进行性能上的调整已达到最优化。

系统性能的4个方面

  1. 性能指标:描述当前流行系统主要涉及的性能指标;   
  2. 性能计算:描述当前使用到的主要性能指标的计算方法
  3. 性能设计:描述如何对现有系统进行性能上的调整优化,并介绍几个已经成熟的设计规则和解决方案
  4. 性能评估:描述如何对当前取得的性能指标进行评价和改进。

性能指标:

这里所提到的性能指标,既包括软件,也包括硬件。在硬件中,既包括计算机,也包括各种通信交换设备,以及其他网络硬件;在软件中,既包括操作系统和各种通信协议,也包括各种参与到通信中的应用程序,如数据库系统、 Web 服务器等。因此,本节要提到的系统性能指标实际上就是这些软硬件的性能指标的集成。 

1.计算机的性能性能指标
  计算机的性能性能指标1.时钟频率(主频)2.高速缓存、3.运算速度、4、运算京都、5、内存的存储容量、6、存储器的存取周期、7 数据处理速率、8 响应时间 9、RASIS特性 10 平均故障响应时间 11、兼容性

  RASIS特性是可靠性(Reliability),可用性(Availability)、可维护性(Serviceability)、完整性(Integraity)和安全性(Security)无者的统称。

  可靠性是指计算机系统在规定的工作条件下和规定的工作时间内持续正确运行的概率。可靠性一般使用平均无故障时间(Mean Time to Failure, MTTF)或平均故障间隔时间(Mean Time Between Failure, MTBF)来衡量。

  可维护性是指系统发生故障后尽快修复的能力,一般用平均故障修复时间(Mean Time To Repair ,MTTR) 来表示。

2.网络性能指标:

  (1)、设备及性能指标。 (2)网络及性能指标、(3)应用及性能指标(QOS) (4)用户级性能指标  (5) 吞吐量

3.操作系统性能指标:
  (1) 系统的可靠性,(2)系统的吞吐量、(3) 系统响应时间 (周转时间)[用户从提交作业到得到计算结果这段时间 ]  (5)可移植性
4.数据库管理系统

  数据库为了保证存储在其中数据安全和一致,DBMS就是管这的

(1)数据库描述功能。定义数据库的全局逻辑结构,局部逻辑结构和其他各种数据库对象。

(2)数据库管理功能。包括系统配置与管理,数据存取与更新管理,数据完整性管理和数据安全性管理。

(3)数据库的查询和操纵功能。该功能呢个包裹数据库检索和修改

(4)数据库维护功能呢个。包括数据库引入管理,数据库结构维护,数据恢复功能和性能检测,为了提高数据库开发效率,现代数据库系统除了DBMS之外,还提供了各种支持应用开发工具。  衡量数据库管理系统的主要性能指标主要包括数据库本身和管理系统两部分。

数据库和数据库管理系统的性能指标包括数据库的大小,单个数据库文件的大小,数据表达数量,单个表的大小,表中运行的记录(行),单个记录行大小。

表上允许的索引数量,数据库允许的索引数量,最大并发事务处理能力,负载均衡能力。最大连接数。

5. Web服务器

  Web 服务器的主要性能指标包括最大并发连接数、响应延迟、吞吐量(每秒处理的请求数)、成功请求数、失败请求数、每秒点击次数、每秒成功点击次数、每秒失败点击次数、尝试连接数、用户连接数等。 

 

1.性能计算的主要方法:定义法、公式法、程序检测法、仪器检测法。定义法主要根据其定义直接获取理想数据,公式法则一般适用于根据基本定义所衍生出的符合性能指标的计算,而程序检测法和仪器检测法则是通过实际的测试来得到其实际值(由于测试的环境和条件不定,其结果也可能相差比较大)

1. MIPS(单字长定点指令平均执行速度) =  指令条数  ÷ (执行时间  × 10 ^6 ) = Fz ÷ CPI = IPC × Fz  Fz 为处理机的工作主频,CPI  为每条指令所需的平均时钟周期数,IPC为每个时钟周期平均执行的指令条数。

eg:如果要计算 Pentium IV/2.4E 处理机的运算速度,因为 Pentium IV/2.4E 处理机的IPC=2(或 CPI=0.5), Fz=2400MHz,所以 MIPSP4/2.4E = IPC′ Fz=2′ 2400 = 4800MIPS。 

2.峰值计算:衡量性能指标就是计算峰值或浮点计算峰值。理论浮点峰值是计算机理论上能达到的每秒钟能完成浮点计算最大次数。CPU的主频决定。

 

3.等效指令速度

  静态指令使用频度指的是在程序中直接统计的计算机速度。动态指令使用频度指的是在程序执行过程中统计的指令速度。在这种方法中,通常加、减法指令占 50%,乘法指令占 15%,除法指令占 5%,程序控制指令占 15%,其他指令占15%

例如,我国最早研制的小型计算机 DJS-130,定点 16 位,加法速度每秒 50 万次,但没有硬件乘法和除法等指令。用软件实现乘法和除法,速度降低 100 倍左右,则其等效指令速度为 

 

即每秒2万次,由于乘法和除法用软件实现,等效速度降低了25倍,如果浮点开方操作PFSQR的比例为2%,它的CPI为100,其他浮点操作的比例为23%,它的CPI4.0其余指令CPI1.33,则该处理机的等效CpI为100.

 

 

 

阿姆达尔:(改进系统性能优化及负载均衡方面知识)

   系统中对某部件采用更快的执行方式,所获得的系统性能的改变程度,取决于这种方式被使用的频率,所占总执行时间的比例。

阿姆达尔定律采用特定不见所取得的加速比。假定使用某种增强部件,计算机的性能就会得到提高,那么加速比如下:

加速比= 不实用增强部件完成整个任务时间 ÷ 使用增强部件完成整个任务的时间

加速比反映了使用增强部件后完成一个任务比不使用增强部件完成同一任务加快了多少。阿姆达尔定律为计算某些情况下的加速比提供了一种便捷的方法。加速比主要取决于两个因素:
1)在原有的计算机上,能被改进并增强的部分在总执行时间中所占的比例。这个值 称之为增强比例,它永远小于等于 1
2)通过增强的执行方式所取得的改进,即如果整个程序使用了增强的执行方式,那 么这个任务的执行速度会有多少提高,这个值是在原来条件下程序的执行时间与使用增强功能后程序的执行时间之比。
  原来的机器使用了增强功能后,执行时间等于未改进部分的执行时间加上改进部分的执
行时间:

 

负载均衡:

 

   (1)基于特定服务器的负载均衡,很多协议支持"重定向"功能,在HTTP协议中支持Location指令,接收到这个指令的浏览器将自动重定向到Location指明的另一个URL上。由于发送Location指令比起执行服务请求,对Web服务器的负载要小得多,因此可以根据这个功能设计一种负载均衡的服务器。当Web服务器认为自己负载较大的时候,它就不再直接发送浏览器请求 的网页,而是送回一个Location指令,让浏览器在服务器集群中的其他服务器上获得所需的网页。

  服务器本身必须支持这种功能,然而具体实现起来却有很多困难。例如,一台服务器如何能保证它重定向过的服务器是比较空闲的,并且不会再次发送 Location 指令? Location 指令和浏览器都没有这方面的支持能力,这样很容易在浏览器上形成一种死循环。因此这种方式实际应用当中并不多见,使用这种方式实现的服务器集群软件也较少。 
  (2)基于DNS(域名服务器)的负载均衡通过 DNS 服务中的随机名字解析来实现负载均衡,在 DNS 服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中一个地址。因此,对于同一个名字,不同的客户机会得到不同的地址,它们也就访问不同地址上的 Web 服务器,从而达到负载均衡的目的。 缺点:一个缺点是为了保证 DNS 数据及时更新,一般都要将 DNS 的刷新时间设置得较小,但太小就会造成太大的额外网络流量,并且更改了 DNS 数据之后也不能立即生效;另一务器之间的差异,它不能做到为性能较好的服务器多分配请求,也不能了解到服务器的当前个缺点是 DNS 负载均衡无法得知服状态,甚至会出现客户请求集中在某一台服务器上的偶然情况。 

  (3)反向代理负载均衡。使用代理服务器可以将请求转发给内部的 Web 服务器,使用这种加速模式显然可以提升静态网页的访问速度。因此也可以考虑使用这种技术,让代理服务器将请求均匀地转发给多台内部 Web 服务器,从而达到负载均衡的目的。这种代理方
式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部 Web 服务器,而这种代理方式是多个客户使用它访问内部 Web 服务器,因此也被称为反向代理模式。实现这个反向代理能力并不能算是一个特别复杂的任务,但是在负载均衡中要求特别高
的效率,这样实现起来就不是十分简单的事了。每针对一次代理,代理服务器就必须打开两个连接,一个为对外的连接,一个为对内的连接。因此,当连接请求数量非常大的时候,代理服务器的负载也非常大,最后,反向代理服务器会成为服务的瓶颈。例如,使用 Apache 的
mod_rproxy 模块来实现负载均衡功能时,提供的并发连接数量受 Apache 本身的并发连接数量的限制。一般来讲,可以使用它来连接数量不是特别大、但每次连接都需要消耗大量处理资源的站点来进行负载均衡,例如搜寻。
使用反向代理的好处是,可以将负载均衡和代理服务器的高速缓存技术结合在一起,以提供有益的性能;其具备额外的安全性,外部客户不能直接访问真实的服务器。并且实现起来可以采用较好的负载均衡策略,将负载非常均衡地分给内部服务器,不会出现负载
集中到某个服务器的偶然现象。

  (4)基于 NAT(Network Address Translation,网络地址转换)的负载均衡技术。网络地址转换指的是在内部地址和外部地址之间进行转换,以便具备内部地址的计算机能访问外部网络,而当外部网络中的计算机访问地址转换网关拥有的某一外部地址时,地址转换网关能将其转发到一个映射的内部地址上。因此如果地址转换网关能将每个连接均匀转换为不同的内部服务器地址,此后,外部网络中的计算机就各自与自己转换得到的地址上的服务器进行通信,从而达到负载分担的目的。地址转换可以通过软件方式来实现,也可以通过硬件方式来实现。使用硬件方式进行操作一般称为交换,而当交换必须保存 TCP 连接信息的时候,这种针对 OSI/RM 网络层的操作就被称为第四层交换。支持负载均衡的网络地址转换为第四层交换机的一种重要功能,由于它基于定制的硬件芯片,因此其性能非常优秀,很多交换机声称具备 400MB~ 800MB 的第四层交换能力;然而也有一些资料表明,在如此快的速度下,大部分交换机就不再具备第四层交换能力了,而仅仅支持第三层甚至第二层交换。

  (5)如果负载特别大,以至于后台的服务器的数量不
再在是几台、十几台,而是上百台甚至更多,这时,即便是使用性能优秀的硬件交换机也会遇到瓶颈。 此时问题将转变为,如何将那么多台服务器分布到各个互联网的多个位置,分散网络负担。当然这可以通过综合使用 DNS 和 NAT 两种方法来实现,然而更好的方式是使用一种半中心的负载均衡方式。在这种半中心的负载均衡方式下,即当客户请求发送给负载均衡器的时候,中心负载均衡器将请求打包并发送给某个服务器,而服务器的回应请求不再返回给中心负载均衡器,而是直接返回给客户,因此中心负载均衡器只负责接受并转发请求,其网络负担就较小了。 
  2 服务器负载均衡
服务器负载均衡一般用于提高服务器的整体处理能力,并提高可靠性、可用性和可维护
性,最终目的是加快服务器的响应速度,从而提高用户的体验度。
负载均衡从结构上分为本地负载均衡(Local Server Load Balance)和全域负载均衡
Global Server Load Balance),前者是指对本地的服务器群做负载均衡,后者是指对分别放
置在不同的地理位置、有不同的网络及服务器群之间做负载均衡。
全域负载均衡有以下特点:
1)解决网络拥塞问题,服务就近提供,实现地理位置无关性;
2)对用户提供更好的访问质量;
3)提高服务器响应速度;
4)提高服务器及其他资源的利用效率;
5)避免了数据中心单点失效。







 

 

















分类:

技术点:

相关文章: