响应时间

各项硬件的资源,如CPU、内存、硬盘输入输出、网络带宽等等。在实际查看架构以前,先强调一个观念,不论是使用系统上哪种资源,当使用率持续超过80%时,系统的性能必定会急速下滑,而不会显示线性关系,以下图所示:

    响应时间




               
               使用率        80%
           资源使用率与系统响应时间的关系
注:从《操做系统》的知识来理解,若是在多用户环境中cup的使用率大于80%,进程就会在运行队列中花费大量的等待时间,响应时间和吞吐量就会降低。
3.1,内存Memory
      一般系统中所发生的问题是因为内存不足所致使,这是较常见的。因此咱们应该先监视内存,确认咱们的服务器有足够的内存。若要执行 windows 2000 上的 iis 5.0(如MOD的web服务),一个专用web 服务器所需 ram 的最小容量是 128mb,但最好是 256mb 到 1gb。由于「iis 文件缓存」默认是使用最多一半可用的内存,所以备有的内存越多,「iis 文件缓存」就越多。

  附注:windows 2000 advanced server 最多可支持 8gb 的 ram,可是「iis文件缓存」将不会利用 4gb 以上的 ram。
     全部在Windows系统执行的应用程序都觉得自已最起码有2GB的连续内存(称之为虚拟内存),当应用程序的线程在存取内存时,操做系统会将其映射(mapping)到某块物理内存,若物理内存不足,操做系统就把物理内存中某些较少用到的区块写至硬盘,以空出该物理内存给当前须要的程序。
Available MBytes 可用物理内存数  
     说明:Available MBytes 是计算机上运行进程可用的物理内存数量,以兆字节为单位。经过计算清零、空闲和待命内存列表的内存空间总数而获得。空闲内存能够立刻使用; 清零内存是由零值填满的内存页,用来防止后续进程得到旧进程使用的数据; 待命内存是从进程工做集(其物理内存)中删除而后进入磁盘的内存,可是该内存仍然能够收回。该计数器仅显示最后一次观察到的值; 不是平均值。
     技 术 :通常要保留10%的可用内存。最低最低不能<4M,此值太小多是内存不足或内存泄漏;
     原 因 :由于IIS默认最多会使用50%的可用内存供文件缓存使用,因此要保留10%的可用内存(以供尖峰时间使用)。
     知识点:物理内存、虚拟内存、IIS文件缓存、清0内存(程序常发生的错误)、待命内存。

       
Page Faults/sec、Pages Input/sec、Page Reads/sec
    注(重要):致使严重的延迟缘由:是由于硬件分页错误。
     说 明: Page Faults/sec 是指处理器处理错误页的综合速率。用错误页数/秒来计算。当处理器请求一个不在其工做集(在物理内存中的空间)内的代码或数据时出现的页错误。这个计数器包括硬错误(那些须要磁盘访问的)和软错误(在物理内存的其它地方找到的错误页)。许多处理器能够在有大量软错误的状况下继续操做。可是,硬错误能够致使明显的拖延。
      Pages Input/sec 指为解决页错误从磁盘上读取的页数。(当处理须要不在其工做集或物理内存的任何地方的代码或数据,而须要从磁盘上检索时出现硬页错误)。
             Page Reads/sec 是指为解析硬页错误而读取磁盘的次数。(当处理请求的硬 页错误不在工做集和物理内存其它地方中的代码或数据,而必须从磁盘上检索时 就会出现硬页错误)。若是 Page Reads/Sec 比率持续保持为 5,表示可能内存不足(阈值为>5.越小越好)。

     可能引发页面错误的操做:应用程序向内存请求一个分页,但系统没法在所需的位置上找到它,就构成了一个页面错误。
     技 术:
         总述:可能涉及到1,因为页交换而致使内存不足;2,因为页交换而致使磁盘瓶颈;
               当这些值很低时,服务器应该能够很快地响应请求;当这些值较高时,是由于你花了太多的内存在缓存处理上,而没有留足够的内存供系统的其它部份使用。能够增长内存或下降缓存的ram大小来解决;
         详细:
              page Faults/sec:只代表数据不能在内存的指定工做集中当即使用;
              page Input/sec: page input/sec > page reads/sec;
              page Reads/sec: 阈值为>5.越小越好,大数值表示磁盘读而不是缓存读;
Page/sec:指为解析硬页错误从磁盘读取或写入磁盘的页数(是Pages Input/sec 和 Pages Output/sec 的总和)。其值推荐00-20若是服务器没有足够的内存处理其工做负荷,此数值将一直很高。若是大于80,表示有问题(太多的读写数据操做要访问磁盘,可考虑增长内存或优化读写数据的算法),若是值比较低,说明Web 服务器响应请求比较快,不然多是服务器系统内存短缺引发( 也多是缓存太大,致使系统内存太少)。

3.2,Processor
随着用户请求从网站得到快速的响应时间,以及在这些网站上不断增长的动态内容,须要利用到快速、有效的处理器用量。当一个或多个进程几乎耗尽全部处理器时,就会发生瓶颈,这会迫使准备好执行的进程线程必须在队列中等待处理器时间。
(web方面) windows 2000 及 iis 5.0 的最大性能增益来自于解决内存问题。在决定改变web 服务器上处理器的个数以前,请先排除内存问题,再监视下列「性能计数器」。
% Processor Time 指处理器执行非闲置线程时间的百分比;通俗一点讲就是CPU 使用率。这是监视处理器活动的主要指示器。它经过在每一个范例间隔中衡量处理器用于执行闲置处理线程的时间,而且用100%减去该值得出。(每台处理器有一个闲置线程,该线程在没有其它线程能够运行时消耗周期)。可将其视为范例间隔用于作有用工做的百分比。
正常值<90,此值过大表示处理器的性能已经不能应付程序的要求,要换更快的处理器。该数值持续超过 90%,则表示此测试的负载对于目前的硬件过于沉重。排除内存因素,若是该计数器的值比较大,而同时网卡和硬盘的值比较低,那么能够肯定CPU 瓶颈。

Processor Queue Length:是指处理列队中的线程数。显示在由 Web服务器全部处理器共享的队列中等待执行的线程数。若是处理器列队中老是有2个以上的线程一般表示处理器堵塞。
参考值:小于2。处理器瓶颈会致使该值持续大于 2。


3.3, Physical Disk:
    由于 MOD的WEB(iis 5.0) 会将记录文件写入磁盘上,因此在通常磁盘活动中,甚至会有高达 100 % 的客户端缓存存取次数。通常来讲,若是有记录之外的大量磁盘读取活动,即表示系统上有其它区域须要调整。例如,硬件分页错误会致使大量的磁盘活动,但它们表示 ram 不足。

%Disk Time %:  指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比。若是三个计数器都比较大,那么硬盘不是瓶颈。若是只有%Disk Time比较大,另外两个都比较适中,硬盘可能会是瓶颈。在记录该计数器以前,请在Windows 2000 的命令行窗口中运行diskperf -yD。正常值<10,此值过大表示耗费太多时间来访问磁盘,可考虑增长内存、更换更快的硬盘、优化读写数据的算法。若数值持续超过80 (此时处理器及网络链接并无饱和),则多是内存泄漏。

Pages per second :  每秒钟检索的页数。该数字应少于每秒一页。


若是这三个计数器(processor: % processor time, network interface connection: bytes total/sec及physicaldisk: % disk time)的值都很高,则硬盘不会引发站点的瓶颈。

补充:
  Avg. Disk Queue Length 指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数。正常值<0.5,此值过大表示磁盘IO太慢,要更换更快的硬盘。
  Disk Transfers/sec 指在此盘上读取/写入操做速率。正常值<(Disk Bytes/sec)/3,此值过大表示系统要求的IO速度已接近硬盘的最大速度,要更换更快的硬盘。
    磁盘使用状况计数器和内存计数器(磁盘瓶颈or内存不足?):
Physical Disk\ % Disk Time 、Physical Disk\ Avg.Disk Queue Length 例如,包括 Page Reads/sec 和 % Disk Time 及 Avg.Disk Queue Length。若是页面读取操做速率很低,同时 % Disk Time 和 Avg.Disk Queue Length的值很高,则可能有磁盘瓶径。可是,若是队列长度增长的同时页面读取速率并未下降,则内存不足。

   3.4, 网络容量、等待时间及带宽  
  测试目标:在系统试运行以后,须要及时准确地了解网络上正在发生什么事;什么应用在运行,如何运行;多少PC正在访问LAN或WAN;哪些应用程序致使系统瓶颈或资源竞争
做用
1,分析关键应用程序的性能
2,定位问题的根源是在客户端、服务器、应用程序仍是网络
3,哪些应用程序占用大量带宽
  基本上,网络是客户端向服务器传送请求的线路。它花在您的服务器上来回传递这些请求及响应的时间,对用户能察觉的服务器性能来讲是个最大限制因素之一。这种请求-响应的循环时间就称为等待时间,等待时间对于web 服务器管理员来讲几乎是没法控制的。例如,您对 internet 上速度缓慢的路由器,或是客户端及服务器之间的物理距离所能做的处理实在很少。
   在主要是由静态内容组成的站点上,网络带宽最有多是性能瓶颈的来源。即便是通常的服务器也可能用满一条 t3 链接 (45mbps) 或 100mbps fast ethernet 链接。测量有效带宽最简单的方法是断定您的服务器是以哪一个速度传送及接收资料的。
Network Interface Bytes Total/sec: 为发送和接收字节的速率,包括帧字符在内。断定网络链接是否存在瓶颈。若要在传送量中留些空间供尖峰时间用,则不该常使用超过 50% 的容量。若是这个数字十分接近链接的容量,而处理器及内存的使用都很适中,则此链接也会是个问题。参考值:该计数器的值和目前网络的带宽相除,结果应该小于50%。
若是您正在计算机上执行的其余服务也使用网络链接,请监视「web service: maximum connections」及「web service: total connection attempts」计数器,以检查您的web服务器是否可以尽量地使用它须要的链接数目。请记得将这些数字与内存及处理器使用量做比较,如此才能肯定链接就是问题,而不是其它组件有问题。
Connection Attempts/sec:Web服务尝试链接的频率。
Maximun Connections:“最大链接数”是和Web服务同时创建起来的最大链接数。

web