linux性能优化-内存原理( 二 )


top
# 按下M切换到内存排序$ top...KiB Mem :8169348 total,6871440 free,267096 used,1030812 buff/cacheKiB Swap:0 total,0 free,0 used.7607492 avail MemPID USERPRNIVIRTRESSHR S%CPU %MEMTIME+ COMMAND430 root19-11223603558823748 S0.00.40:32.17 systemd-journal1075 root2007718602274411368 S0.00.30:38.89 snapd1048 root200170904172929488 S0.00.20:00.24 networkd-dispat1 root2007802091566644 S0.00.10:22.92 systemd12376 azure2007663274566420 S0.00.10:00.01 systemd12374 root20010798473126304 S0.00.10:00.00 sshd...
工具图谱
基本优化思路 最好禁止 Swap 。如果必须开启 Swap,降低的值,减少内存回收时 Swap 的使用倾向 。减少内存的动态分配 。比如,可以使用内存池、大页()等 。尽量使用缓存和缓冲区来访问数据 。比如,可以使用堆栈明确声明内存空间,来存储需要缓存的数据;或者用 Redis 这类的外部缓存组件,优化数据的访问 。使用等方式限制进程的内存使用情况 。这样,可以确保系统内存不会被异常进程耗尽 。通过 /proc/pid/ ,调整核心应用的。这样,可以保证即使内存紧张,核心应用也不会被 OOM 杀死 。