Linux 服务器的那些性能参数指标

合集下载

服务器性能监控指标解读

服务器性能监控指标解读

服务器性能监控指标解读服务器性能监控是指通过监控服务器的各项指标来评估服务器的运行状态和性能表现,以便及时发现问题并进行调整优化。

在服务器运行过程中,有许多指标可以用来评估服务器的性能,包括CPU利用率、内存利用率、磁盘IO、网络流量等。

本文将对这些常见的服务器性能监控指标进行解读,帮助读者更好地理解服务器性能监控的重要性和意义。

一、CPU利用率CPU利用率是指CPU在单位时间内被使用的比例,通常以百分比表示。

CPU是服务器的核心组件之一,它的性能直接影响服务器的整体性能。

当CPU利用率过高时,会导致服务器响应变慢甚至无法正常工作。

因此,监控CPU利用率是非常重要的。

一般来说,CPU利用率在70%以下是比较正常的,超过70%就需要引起注意了。

二、内存利用率内存利用率是指服务器内存在单位时间内被使用的比例,也通常以百分比表示。

内存是服务器存储数据的地方,它的大小和使用情况直接影响服务器的性能。

当内存利用率过高时,会导致服务器开始使用交换空间,从而影响服务器的性能。

因此,监控内存利用率也是非常重要的。

一般来说,内存利用率在80%以下是比较正常的,超过80%就需要引起注意了。

三、磁盘IO磁盘IO是指服务器磁盘的输入输出操作,包括读取和写入。

磁盘IO的速度直接影响服务器的数据读写性能。

监控磁盘IO可以帮助我们了解服务器的数据读写情况,及时发现磁盘性能瓶颈。

一般来说,磁盘IO的速度越快越好,如果磁盘IO速度过慢,可能会导致服务器响应变慢甚至出现数据丢失的情况。

四、网络流量网络流量是指服务器在网络上传输的数据量,包括上传和下载。

监控网络流量可以帮助我们了解服务器的网络使用情况,及时发现网络带宽不足或者网络拥堵的情况。

一般来说,网络流量的波动是正常的,但如果网络流量持续高峰,可能会导致网络延迟或者丢包的情况。

综上所述,服务器性能监控是非常重要的,通过监控服务器的各项指标,我们可以及时发现问题并进行调整优化,确保服务器的正常运行和高性能表现。

服务器性能指标范文

服务器性能指标范文

服务器性能指标范文首先,服务器性能指标通常包括以下几个方面:1.响应时间:即服务器对用户请求作出响应的时间。

响应时间越短,表示服务器的处理效率越高。

2.吞吐量:指服务器单位时间内能处理的请求数量。

吞吐量越高,表示服务器的处理能力越强。

3.并发能力:指服务器能同时处理的请求数量。

并发能力越高,表示服务器在面对高并发请求时能够保持稳定运行。

4.可用性:指服务器正常运行的时间与总运行时间之比。

可用性越高,表示服务器的稳定性和可靠性越好。

而要评估服务器性能,可以采取以下方法:1.压力测试:通过模拟大量用户同时访问服务器,观察服务器在不同负载下的响应时间、吞吐量和并发能力等指标。

可以使用性能测试工具来进行有针对性的压力测试。

2.资源监控:监控服务器的CPU利用率、内存占用率、网络流量等指标,以及服务的响应时间、并发连接数等指标,实时反映服务器的运行状态。

3.日志分析:通过分析服务器的访问日志和错误日志,了解服务器的请求分布情况、错误率和响应时间等信息,从而判断服务器在不同情况下的性能表现。

影响服务器性能的因素有很多,下面列举几个常见的:1.硬件配置:服务器的硬件配置越高,如CPU数量和性能、内存容量和带宽等,通常能提供更高的性能。

2.网络延迟:服务器和用户之间的网络延迟越低,用户请求的响应时间就越短。

3.应用程序优化:合理的应用程序设计和优化能够减少不必要的计算和IO操作,提高服务器的处理效率。

4.负载均衡:采用负载均衡技术可以将请求均匀分配到多台服务器上,避免过度集中负载,提升服务器的吞吐量和并发能力。

综上所述,服务器性能指标是评估服务器运行能力和稳定性的重要指标。

通过压力测试、资源监控和日志分析等方法,可以全面了解服务器在不同条件下的性能表现。

同时,硬件配置、网络延迟、应用程序优化和负载均衡等因素也会影响服务器性能的表现。

只有全面评估和优化这些因素,才能提高服务器的性能和可靠性,为用户提供更好的服务体验。

服务器的基本参数有哪些

服务器的基本参数有哪些

引言概述:服务器是现代计算机系统中的重要组成部分,负责存储、处理和传输数据。

服务器的基本参数对于其性能和功能起着至关重要的作用。

本文将介绍服务器的基本参数,包括处理器、内存、硬盘、网络接口和操作系统。

正文内容:一、处理器1.架构类型:常见的服务器处理器架构有x86、ARM和PowerPC 等,每种架构都有其特点和适用的场景。

2.核心数量:多核处理器能同时执行多个计算任务,提高服务器的处理能力。

3.频率和缓存:处理器的频率决定了其每秒钟可执行的指令数量,缓存大小则影响了数据的读写速度。

二、内存1.容量:服务器的内存容量决定了能同时处理的数据量大小。

2.类型:常见的内存类型有DDR3和DDR4,后者具有更高的数据传输速率。

3.错误检测与校正(ECC):ECC内存能检测和修正内存中的错误,提高服务器的可靠性和稳定性。

三、硬盘1.类型:服务器常用的硬盘类型包括HDD(机械硬盘)和SSD (固态硬盘),后者具有更快的读写速度和更低的能耗。

2.容量:硬盘容量决定了服务器能存储的数据量大小。

3.RD级别:RD技术能实现对多个硬盘的数据冗余和备份,提高服务器的数据可靠性和安全性。

四、网络接口1.速度:网络接口的速度决定了服务器与外部网络的数据传输速度,常见的速度有千兆以太网和万兆以太网。

2.接口类型:服务器常用的网络接口类型有RJ45(以太网)和光纤接口。

3.冗余:服务器通常具备冗余的网络接口,以保障在一接口故障时仍能正常工作。

五、操作系统1.类型:常见的服务器操作系统有WindowsServer、Linux和UNIX等,每个操作系统有各自的优势和适用场景。

2.版本:操作系统的版本决定了其功能和安全性的程度。

3.更新和补丁:定期更新操作系统和安装安全补丁是保持服务器安全性的重要步骤。

总结:服务器的基本参数包括处理器、内存、硬盘、网络接口和操作系统。

处理器的架构、核心数量、频率和缓存量决定了服务器的计算能力;内存的容量和类型直接影响了服务器的数据处理能力;硬盘的类型、容量和RD级别决定了服务器的存储能力和数据安全性;网络接口的速度、类型和冗余性能决定了服务器与外部网络的连接质量;操作系统的类型、版本和更新情况直接关系到服务器的功能和安全性。

linux 常见mtu值

linux 常见mtu值

linux 常见mtu值MTU是网络通讯中经常用到的一个词汇,意味着“最大传输单元”,指在数据链路层中单次传输包中包含的最大数据量。

在不同的网络环境下,MTU值也不一定相同,因此了解不同网络环境下的常见MTU值很有必要。

1.以太网以太网是一种广泛使用的网络连接方式,使用的MTU值通常为1500字节。

在以太网中,一个数据包最大能够承载1500字节数据,在传输过程中会被拆分为多个分段进行传输,然后由接收端重新组合。

由于大多数以太网设备已经支持了MTU值为1500字节的标准,因此如果需要进行MTU值的设置,通常也选择1500字节。

2. ADSLADSL是一种常见的数字用户线路,已经成为大多数家庭和办公室宽带接入的标准。

由于ADSL使用的是电信设备,因此MTU值常常为1492字节。

这种情况的出现主要是由于在网络数据传输过程中,需要考虑额外的头部数据,比如PPP协议头部。

为了保证在传输过程中不出现数据丢失或者包错失的情况,这些额外的头部数据需要占用通过网络传输的每个数据包的一定长度,因此MTU值需要适当地设置。

3. 4G手机网络手机网络通常使用的是无线数据传输技术,相较于有线网,无线网的数据传输效率存在着很大的差异。

在4G网络中,通常的MTU值为1400字节。

这种设置的主要原因是由于移动网络中存在很多无线传输数据时需要的额外头部信息,比如IPV4头部、TCP头部以及UDP头部等。

因此如果MTU值过高,可能会导致数据丢失或损坏的风险增加,在网络数据传输过程中表现出很多不可预测的情况。

网络隧道是一种将数据通过一个网络隧道传输到另一个网络的技术。

在使用这种技术进行数据传输时,MTU值的设定需要更加谨慎。

通常在使用VPN或者IPv6隧道传输数据时,会采用比较小的MTU值,比如1280字节或者1200字节。

这主要是因为在隧道中需要很多冗余的头部数据来维护隧道的正常工作,因此在选择MTU值时需要格外注意。

总结MTU值是进行网络数据传输的一个重要参数,不同的网络环境中可能需要不同的MTU值来保证数据传输的质量。

linux内存相关指标

linux内存相关指标

linux内存相关指标
在Linux系统中,有几个重要的内存相关指标可用于监控和管理系统内存的使
用情况。

以下是一些常见的Linux内存指标:
1. Total(总内存):这是系统中总共可用的内存量,包括物理内存和交换空
间。

2. Used(已使用内存):已经被分配给进程使用的内存量,包括正在使用的物
理内存和交换空间。

3. Free(空闲内存):尚未被分配给任何进程使用的内存量,包括未使用的物
理内存和未使用的交换空间。

4. Buffers(缓冲区):用于存储正在写入磁盘的数据的缓冲区所使用的内存
量。

5. Cached(缓存):用于存储经常访问的文件数据的缓存所使用的内存量。

6. Swap(交换空间):当内存不足时,用于将不活动的内存页交换到磁盘上的
一块特殊的空间。

Swap被视为延伸的物理内存。

这些指标可以通过命令`free`来查看,例如:
```
$ free -h
total used free shared buff/cache available
Mem: 7.7G 3.5G 1.2G 239M 3.0G 3.0G
Swap: 2.0G 392M 1.6G
```
除了`free`命令之外,还可以使用`top`、`htop`、`procfs`等工具来查看和监
控系统内存使用情况。

这些内存指标对于诊断性能问题、优化内存使用以及了解系统健康状况都非常
有用。

在运行Linux服务器或进行性能调优时,了解和监控内存指标可以帮助您更
好地管理系统资源。

服务器监控指标了解常用的性能指标和监控工具

服务器监控指标了解常用的性能指标和监控工具

服务器监控指标了解常用的性能指标和监控工具服务器监控是确保系统运行正常的关键一环。

通过实时监控服务器性能指标,可以及时发现并解决潜在的问题,提高服务器的稳定性和可靠性。

本文将介绍几个常用的服务器性能指标以及用于监控这些性能指标的工具。

一、CPU使用率CPU使用率是衡量服务器负载的重要指标之一。

它表示CPU正在执行指令的时间占总时间的比例。

通常,当CPU使用率超过70%时,就表明服务器正在超负荷运行。

常用的CPU监控工具有:1. top:top是Linux系统中常用的监控工具,它可以实时显示CPU 的使用率、内存使用率、进程信息等。

2. Windows任务管理器:在Windows系统中,任务管理器可以监控系统CPU的使用率,并以图表的形式展示。

二、内存使用率内存使用率是反映服务器内存负载的重要指标。

它表示已用内存占总内存的比例。

当内存使用率过高时,可能会导致服务器响应变慢或出现蓝屏等问题。

常用的内存监控工具有:1. free:free命令可以实时显示系统的内存使用情况,包括已用内存、可用内存、缓存等信息。

2. Performance Monitor(Perfmon):Perfmon是Windows系统自带的监控工具,可以实时监控系统的内存使用情况,并生成详细的报告。

三、磁盘空间使用率磁盘空间使用率是评估服务器存储容量的重要指标。

它表示已用磁盘空间占总磁盘空间的比例。

当磁盘空间使用率接近或超过100%时,可能会导致服务器无法正常写入数据,从而影响系统运行。

常用的磁盘监控工具有:1. df:df命令可以实时显示文件系统的使用情况,包括已用空间、可用空间、挂载点等信息。

2. Windows资源监视器:在Windows系统中,资源监视器可以监控磁盘空间的使用情况,并提供详细的磁盘分析报告。

四、网络流量网络流量是评估服务器网络性能的重要指标。

它表示服务器单位时间内收发的数据量。

通过监控网络流量,可以及时发现网络拥堵、带宽瓶颈等问题。

linux系统常用监控指标

linux系统常用监控指标

linux系统常用监控指标Linux系统常用监控指标Linux系统中,监控指标是评估系统性能和健康状况的重要依据。

通过监控指标,可以及时发现问题并及时采取措施,保证系统的稳定和高效运行。

本文将介绍Linux系统常用的监控指标。

一、CPU使用率CPU使用率是衡量系统负载的重要指标之一。

通过监控CPU使用率可以了解系统的运行状况,判断是否存在CPU资源瓶颈。

通常使用top命令或者sar命令来查看CPU使用率。

二、内存使用情况内存是系统性能的关键因素之一,合理的内存使用可以提升系统的运行效率。

通过监控内存使用情况,可以了解系统内存的分配和使用情况,判断是否存在内存不足的情况。

常用的命令有free和top 命令。

三、磁盘I/O磁盘I/O是指计算机与硬盘之间的数据传输,磁盘I/O的性能直接影响系统的整体性能。

通过监控磁盘I/O指标,可以了解磁盘的读写速度和响应时间,判断是否存在磁盘I/O瓶颈。

常用的命令有iostat和sar命令。

四、网络流量网络流量是指数据在网络中的传输情况,网络流量的监控可以帮助我们了解网络的负载情况,判断是否存在网络瓶颈。

通过监控网络流量指标,可以了解网络的带宽使用情况,常用的命令有netstat 和iftop命令。

五、进程状态进程是系统中正在运行的程序的实例,进程的状态可以反映系统的运行情况。

通过监控进程状态指标,可以了解系统中各个进程的运行情况,判断是否存在进程过多或者进程阻塞的情况。

常用的命令有ps和top命令。

六、系统负载系统负载是指系统中正在运行的进程数目,系统负载的大小可以反映系统的工作负荷。

通过监控系统负载指标,可以了解系统的繁忙程度,判断是否存在系统负载过高的情况。

常用的命令有uptime 和top命令。

七、文件打开数文件打开数是指系统中打开的文件数量,文件打开数的过高可能会导致系统资源的浪费。

通过监控文件打开数指标,可以了解系统中打开文件的情况,判断是否存在文件句柄泄漏或者文件描述符不足的情况。

服务器的基本参数有哪些(二)

服务器的基本参数有哪些(二)

服务器的基本参数有哪些(二)引言:服务器是一种用于存储、处理和传输数据的计算机设备,广泛应用于互联网、企业数据中心等领域。

了解服务器的基本参数对于选择适合自身需求的服务器至关重要。

本文将分析服务器的基本参数,并详细介绍每个参数的含义和作用。

正文:一、处理器参数1. 主频:指处理器每秒钟执行指令的次数,主频越高,处理器的计算能力越强。

2. 指令集:处理器支持的指令的集合,不同的处理器可能支持不同的指令集,如x86、ARM等。

3. 核心数量:指处理器芯片上的核心数目,多核心可以同时进行更多的计算任务。

4. 线程数量:每个处理器核心可以同时处理的线程数量,多线程可以提高处理器的并发性能。

二、内存参数1. 容量:指服务器所搭载的内存模块的总容量,容量越大,服务器可以同时处理更多的数据。

2. 类型:内存模块的类型,常见的有DDR3、DDR4等,不同类型的内存模块具有不同的数据传输速率和能效。

3. 频率:内存模块的工作频率,频率越高,数据传输速率越快。

4. ECC技术:纠错码(Error Correcting Code)技术,用于检测并纠正内存中的错误,提高计算系统的稳定性和可靠性。

三、存储参数1. 硬盘容量:指服务器所搭载硬盘的总容量,用于存储数据和程序。

2. 硬盘类型:常见的有机械硬盘(HDD)和固态硬盘(SSD),固态硬盘读写速度更快,但价格较贵。

3. RAID级别:RAID(冗余磁盘阵列)技术可以将多个硬盘组合起来,提高数据的性能和冗余度。

4. 接口类型:硬盘与主板之间的连接接口,如SATA和PCIe等。

四、网络参数1. 网络接口:服务器的物理网卡数量,多个网口可以提供更高的网络传输性能。

2. 速率:每个网络接口的传输速度,常见的有千兆以太网(Gigabit Ethernet)和万兆以太网(10 Gigabit Ethernet)。

3. 协议支持:服务器是否支持各种网络协议,如TCP/IP、UDP 等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux 服务器的那些性能参数指标一个基于 Linux 操作系统的服务器运行的同时,也会表征出各种各样参数信息。

通常来说运维人员、系统管理员会对这些数据会极为敏感,但是这些参数对于开发者来说也十分重要,尤其当你的程序非正常工作的时候,这些蛛丝马迹往往会帮助快速定位跟踪问题。

这里只是一些简单的工具查看系统的相关参数,当然很多工具也是通过分析加工/proc、/sys 下的数据来工作的,而那些更加细致、专业的性能监测和调优,可能还需要更加专业的工具(perf、systemtap 等)和技术才能完成哦。

毕竟来说,系统性能监控本身就是个大学问。

一、CPU和内存类1.1top➜ ~ top第一行后面的三个值是系统在之前 1、5、15 的平均负载,也可以看出系统负载是上升、平稳、下降的趋势,当这个值超过 CPU 可执行单元的数目,则表示 CPU 的性能已经饱和成为瓶颈了。

第二行统计了系统的任务状态信息。

running 很自然不必多说,包括正在 CPU 上运行的和将要被调度运行的;sleeping 通常是等待事件(比如 IO 操作)完成的任务,细分可以包括 interruptible 和 uninterruptible 的类型;stopped 是一些被暂停的任务,通常发送 SIGSTOP 或者对一个前台任务操作 Ctrl-Z 可以将其暂停;zombie 僵尸任务,虽然进程终止资源会被自动回收,但是含有退出任务的 task descriptor 需要父进程访问后才能释放,这种进程显示为defunct 状态,无论是因为父进程提前退出还是未 wait 调用,出现这种进程都应该格外注意程序是否设计有误。

第三行 CPU 占用率根据类型有以下几种情况:•(us) user:CPU 在低 nice 值(高优先级)用户态所占用的时间(nice<=0)。

正常情况下只要服务器不是很闲,那么大部分的 CPU 时间应该都在此执行这类程序•(sy) system:CPU 处于内核态所占用的时间,操作系统通过系统调用(system call)从用户态陷入内核态,以执行特定的服务;通常情况下该值会比较小,但是当服务器执行的 IO 比较密集的时候,该值会比较大•(ni) nice:CPU 在高 nice 值(低优先级)用户态以低优先级运行占用的时间(nice>0)。

默认新启动的进程 nice=0,是不会计入这里的,除非手动通过 renice 或者 setpriority() 的方式修改程序的nice值•(id) idle:CPU 在空闲状态(执行 kernel idle handler )所占用的时间•(wa) iowait:等待 IO 完成做占用的时间•(hi) irq:系统处理硬件中断所消耗的时间•(si) softirq:系统处理软中断所消耗的时间,记住软中断分为 softirqs、tasklets (其实是前者的特例)、work queues,不知道这里是统计的是哪些的时间,毕竟 work queues 的执行已经不是中断上下文了•(st) steal:在虚拟机情况下才有意义,因为虚拟机下 CPU 也是共享物理 CPU 的,所以这段时间表明虚拟机等待 hypervisor 调度 CPU 的时间,也意味着这段时间 hypervisor 将 CPU 调度给别的 CPU 执行,这个时段的 CPU 资源被“stolen”了。

这个值在我 KVM 的 VPS 机器上是不为 0的,但也只有 0.1 这个数量级,是不是可以用来判断 VPS 超售的情况?CPU 占用率高很多情况下意味着一些东西,这也给服务器 CPU 使用率过高情况下指明了相应地排查思路:a.当 user 占用率过高的时候,通常是某些个别的进程占用了大量的 CPU,这时候很容易通过 top 找到该程序;此时如果怀疑程序异常,可以通过perf 等思路找出热点调用函数来进一步排查;b.当 system 占用率过高的时候,如果 IO 操作(包括终端 IO)比较多,可能会造成这部分的 CPU 占用率高,比如在 file server、database server 等类型的服务器上,否则(比如>20%)很可能有些部分的内核、驱动模块有问题;c.当 nice 占用率过高的时候,通常是有意行为,当进程的发起者知道某些进程占用较高的 CPU,会设置其 nice 值确保不会淹没其他进程对 CPU的使用请求;d.当 iowait 占用率过高的时候,通常意味着某些程序的 IO 操作效率很低,或者 IO 对应设备的性能很低以至于读写操作需要很长的时间来完成;e.当 irq/softirq 占用率过高的时候,很可能某些外设出现问题,导致产生大量的irq请求,这时候通过检查 /proc/interrupts 文件来深究问题所在;f.当 steal 占用率过高的时候,黑心厂商虚拟机超售了吧!第四行和第五行是物理内存和虚拟内存(交换分区)的信息:total = free + used + buff/cache,现在buffers和cached Mem信息总和到一起了,但是buffers和cachedMem 的关系很多地方都没说清楚。

其实通过对比数据,这两个值就是/proc/meminfo 中的 Buffers 和 Cached 字段:Buffers 是针对 raw disk 的块缓存,主要是以 raw block 的方式缓存文件系统的元数据(比如超级块信息等),这个值一般比较小(20M左右);而 Cached 是针对于某些具体的文件进行读缓存,以增加文件的访问效率而使用的,可以说是用于文件系统中文件缓存使用。

而 avail Mem 是一个新的参数值,用于指示在不进行交换的情况下,可以给新开启的程序多少内存空间,大致和 free + buff/cached 相当,而这也印证了上面的说法,free + buffers + cached Mem才是真正可用的物理内存。

并且,使用交换分区不见得是坏事情,所以交换分区使用率不是什么严重的参数,但是频繁的 swap in/out 就不是好事情了,这种情况需要注意,通常表示物理内存紧缺的情况。

最后是每个程序的资源占用列表,其中 CPU 的使用率是所有 CPU core 占用率的总和。

通常执行 top 的时候,本身该程序会大量的读取 /proc 操作,所以基本该 top 程序本身也会是名列前茅的。

top 虽然非常强大,但是通常用于控制台实时监测系统信息,不适合长时间(几天、几个月)监测系统的负载信息,同时对于短命的进程也会遗漏无法给出统计信息。

1.2vmstatvmstat 是除 top 之外另一个常用的系统检测工具,下面截图是我用-j4编译boost的系统负载。

r 表示可运行进程数目,数据大致相符;而b表示的是 uninterruptible 睡眠的进程数目;swpd 表示使用到的虚拟内存数量,跟 top-Swap-used 的数值是一个含义,而如手册所说,通常情况下 buffers 数目要比 cached Mem 小的多,buffers 一般20M这么个数量级;io 域的 bi、bo 表明每秒钟向磁盘接收和发送的块数目(blocks/s);system 域的 in 表明每秒钟的系统中断数(包括时钟中断),cs表明因为进程切换导致上下文切换的数目。

说到这里,想到以前很多人纠结编译 linux kernel 的时候 -j 参数究竟是 CPU Core 还是 CPU Core+1?通过上面修改 -j 参数值编译 boost 和 linux kernel的同时开启 vmstat 监控,发现两种情况下 context switch 基本没有变化,且也只有显著增加 -j 值后 context switch 才会有显著的增加,看来不必过于纠结这个参数了,虽然具体编译时间长度我还没有测试。

资料说如果不是在系统启动或者 benchmark 的状态,参数 context switch>100000 程序肯定有问题。

1.3pidstat如果想对某个进程进行全面具体的追踪,没有什么比 pidstat 更合适的了——栈空间、缺页情况、主被动切换等信息尽收眼底。

这个命令最有用的参数是-t,可以将进程中各个线程的详细信息罗列出来。

-r:显示缺页错误和内存使用状况,缺页错误是程序需要访问映射在虚拟内存空间中但是还尚未被加载到物理内存中的一个分页,缺页错误两个主要类型是a.minflt/s 指的 minor faults,当需要访问的物理页面因为某些原因(比如共享页面、缓存机制等)已经存在于物理内存中了,只是在当前进程的页表中没有引用,MMU 只需要设置对应的 entry 就可以了,这个代价是相当小的b.majflt/s 指的 major faults,MMU 需要在当前可用物理内存中申请一块空闲的物理页面(如果没有可用的空闲页面,则需要将别的物理页面切换到交换空间去以释放得到空闲物理页面),然后从外部加载数据到该物理页面中,并设置好对应的 entry,这个代价是相当高的,和前者有几个数据级的差异-s:栈使用状况,包括 StkSize 为线程保留的栈空间,以及 StkRef 实际使用的栈空间。

使用ulimit -s发现CentOS 6.x上面默认栈空间是10240K,而 CentOS 7.x、Ubuntu系列默认栈空间大小为8196K-u:CPU使用率情况,参数同前面类似-w:线程上下文切换的数目,还细分为cswch/s因为等待资源等因素导致的主动切换,以及nvcswch/s线程CPU时间导致的被动切换的统计如果每次都先ps得到程序的pid后再操作pidstat会显得很麻烦,所以这个杀手锏的-C可以指定某个字符串,然后Command中如果包含这个字符串,那么该程序的信息就会被打印统计出来,-l可以显示完整的程序名和参数➜ ~ pidstat -w -t -C “ailaw” -l这么看来,如果查看单个尤其是多线程的任务时候,pidstat比常用的ps更好使!1.4其他当需要单独监测单个 CPU 情况的时候,除了 htop 还可以使用 mpstat,查看在SMP 处理器上各个 Core 的工作量是否负载均衡,是否有某些热点线程占用Core。

➜ ~ mpstat -P ALL 1如果想直接监测某个进程占用的资源,既可以使用top -u taozj的方式过滤掉其他用户无关进程,也可以采用下面的方式进行选择,ps命令可以自定义需要打印的条目信息:while :; do ps -eo user,pid,ni,pri,pcpu,psr,comm | grep 'ailawd'; sleep 1; done如想理清继承关系,下面一个常用的参数可以用于显示进程树结构,显示效果比pstree详细美观的多➜ ~ ps axjf二、磁盘IO类iotop 可以直观的显示各个进程、线程的磁盘读取实时速率;lsof 不仅可以显示普通文件的打开信息(使用者),还可以操作 /dev/sda1 这类设备文件的打开信息,那么比如当分区无法 umount 的时候,就可以通过 lsof 找出磁盘该分区的使用状态了,而且添加 +fg 参数还可以额外显示文件打开 flag 标记。

相关文档
最新文档