所有 SSD 文件服务器缓存在内存上,安全吗?

所有 SSD 文件服务器缓存在内存上,安全吗?

我正在运行 Dell optiplex 790、i5 2400、8GB RAM(现在是 16GB)、870 evo 250GB 启动驱动器、1&4TB 870 qvo ssds 用于存储、Linux Mint 作为基本操作系统。

我担心内存会出问题,尽管没有任何故障迹象,但我可以看到缓存累积到大约 13.5/80(ish)%(在 14GB 传输期间)的可用内存。这是一个安全的设置吗?我应该考虑其他替代方案吗?我没有使用 ZFS,因为新的要求是我需要 TPM 2.0。只是想看看是否还有其他我应该研究的小调整。

这台计算机所做的就是存储和提供数据。我很少向它发送数据,但每次发送时,数据量都达到几千兆字节。

更新:我之前在向服务器传输大量数据时确实遇到过连接中断的情况,我认为这是因为客户端设备(Unihertz Jelly Star)的硬件质量太差,无法长时间传输数据,我使用的其他客户端设备可以轻松处理传输(之前是 Galaxy S10e 和许多基于 Windows 和 Linux 的机器)在 Jelly star 上,它以每秒 2MB 左右的速度移动数据,因此怀疑硬件质量较差,再加上 wifi 上的连接速度/协议较慢。通过 Galaxy A03S 进行的批量传输测试证实了这一点。

我将 RAM 增加了一倍,达到 16GB(很快将达到 32GB),以减少出现任何性能问题的可能性。- 在 Shuttle XS35(v1 和 v3)机器的先前设置的迭代中,读/写下降很明显,但据我所知,并没有出现如上所述的下降。我怀疑这是由于 Atom CPU 和 RAM 整体的限制,因此才切换并整合到戴尔设备中。

我真正担心的是,虽然服务器主机中的计算机似乎可以很好地将缓存的数据保存在内存中,但我希望得到某种保证,确保这样做是安全的,如果不行,我绝对希望找到一种解决方案,在传输完成一定时间后清除缓存,而不是让 cronjob 自动执行此操作,例如每 30 分钟一次。相反,让计算机对自己说:“好的,自 45 分钟前以来没有客户端请求此数据,是时候将其从内存中清除了”。

随着 NIC 最终升级到 2.5GBE,人们的担忧也变得越来越大,但是我并不认为这会成为一个问题,我只是想拼凑一个可靠且响应迅速的设置,它将彻底解决基于 USB 的网络共享问题,到目前为止,这已经在 1GBE NIC 下实现了,但我还没有完成,因此希望客户端和服务器之间有更快的网络连接。

我为错误的拼写和标点符号道歉,我有澳大利亚血统(25%)和新西兰血统(其余),所以语言在最好的情况下也可能很粗鲁。

答案1

你的问题有点太笼统了。

缓存磁盘读取现在是大多数操作系统的正常部分 - 这种行为是正常的并且是可以预料的。

数据可能会在 RAM 中损坏,然后损坏磁盘上的内容 - 但更有可能导致段错误。

这里的替代方法是测试 RAM(例如,使用 memtest86),如果 RAM 有故障,则更换它。我认为像 ZFS 这样的文件系统在这里不会有帮助 - 事实上,前段时间有很多人提出 ZFS 需要 ECC 内存来防止内存损坏。

相关内容