这是坑,别信,别这么干。我2019年在项目中遇到过,客户服务器512g内存,实际可用仅剩457g。
这事复杂在内存显示容量和实际可用容量之间的差异。512g内存只有457g可用,其实很简单。先说最重要的,这主要是因为存储系统的格式化和分区方式。比如,Windows系统使用的是NTFS文件系统,它会在存储空间中预留一部分用于元数据管理,这就导致实际可用空间小于标称容量。
另外一点,内存的存储单元在物理上是连续的,但操作系统在分配给文件和程序时可能会产生碎片。大概3000量级的项目,由于频繁读写,很容易出现碎片,这也影响了可用空间。
我一开始也以为这是硬件问题,后来发现不对,其实更多的是软件层面的优化问题。等等,还有个事,一些内存管理软件也可能导致空间被占满。
所以,我的建议是定期清理磁盘碎片,并考虑使用更高效的文件系统,比如ext4(Linux系统)。这个点很多人没注意,我觉得值得试试。