我需要通过10 it链接从另一台机器加载大文本文件,这些文件是由外部/封闭源代码软件创建的,我无法更改(例如,使其压缩输出文件)。
目前,网络和磁盘IO的使用率是100%,在这些机器(源和目标机器),所以系统的瓶颈。
如果源机器一开始就可以压缩文本文件,那么根本就没有问题,但是我没有访问源程序的权限(文件被rsync编辑到我可以访问的目标机器)。
在目标机器上,我能做些什么来至少减少目标机磁盘上的压力吗?
我想出了一种荒谬的想法:用几个GBs建立一个临时内存映射驱动器,将它从源机装入rsync的输入目录,然后编写程序每次压缩几个文本文件,将压缩后的输出文件(比原始文件小10倍)写入HDD,并从内存映射驱动器中删除原始文件。
已经有工具这样做了吗!还有其他建议吗?
我用的是ubuntu 18.04。
诚挚的问候
发布于 2022-01-18 13:29:09
在目标机器上,我能做些什么来至少减少目标机磁盘上的压力吗?
当磁盘IO成为瓶颈时,显而易见的解决方案当然是“获得更快的磁盘”。
或者,当您可以节省一些CPU容量时:几个Linux文件系统支持“透明”压缩,其中文件系统驱动程序执行动态压缩,同时将数据写入底层块存储,并在数据再次读取时进行解压缩。那么,您就不必在应用程序级别上进行任何更改。
zfs set compression=on <STORAGE>https://serverfault.com/questions/1090356
复制相似问题