因为这是一台达梦数据库服务器,上面跑的只有数据库服务,而且使用内存最高的也是dmserver 进程。
strace 一下dmserver 进程发现其中有非常频繁的stat 系统调用发生,而且stat 的文件总是新的文件名:
strace -fp dmserver 服务的进程号 -e trace=stat
进一步观察到dmserver 进程会在本地目录下频繁的创建、打开、关闭、删除心跳文件,每秒钟一个新的文件名:
strace -fp dmserver 服务的进程号 -e trace=open,stat,close,unlink
总结:dmserver 进程频繁的文件io 操作,导致了dentry 占用了系统太多的内存资源。