这个指标是判定物理内存够不够用的最重要的指标。
Nmon PAGE Sheet:pgsin、pgsout
topas:PgspIn、PgspOut
PgspIn:每秒从Paging Space读入物理内存的4K分页的数量
PgspOut:每秒写到Paging Space的4K分页的数量
物理内存够用的情况下,这两个指标都是0。但等于0,并不一定内存够用。例如,如果有数据库,还要看数据库够不够。比如总的物理内存20G,分16G给数据库,从pgspin pgspout看,一直是0,内存是够的,但可能数据库在跑大的压力,16G内存过少,导致数据库操作的响应时间比较长。
如果这两个指标长期不为0,则一定是物理内存不足。
如果偶尔不为0,不一定是物理内存不足,需要具体问题具体分析。例如:一台服务器上白天做交易,晚上做批处理。白天做交易的时候交易进程占用90%的物理内存,晚上做批处理的时候,批处理进程进入物理内存,并把交易进程的内存挤到Paging Space里面。到第二天白天的时候,交易进程进入物理内存,把批处理的进程挤到Paging Space里面。这个场景下,物理内存是够用的,但每天有两个时间段PgspIn/Out不为0。
另外,不要把PageIn/PageOut和PgspIn/Out搞混了。
PageIn/PageOut是内存与文件系统之间的读写,是正常的内存缺页。CPU要数据,内存里面没有,就会产生内存缺页,然后去磁盘里面读这个页,对于程序来说,这是再正常不过的事,比如说,程序刚启动的时候,内存里面肯定是没有读进来什么数据。
PgspIn/Out是内存与Paging Space之间的读写。