我使用rsync通过WebDav将大量文件(在Ubuntu Linux服务器上)备份到云网络服务。因为我的网络速度是我的瓶颈因素,我想我应该使用rsync -z (压缩)来减小文件大小,希望这能减少瓶颈。
无论如何,在研究rsync与压缩的用途和用法时,我似乎没有找到它到底在做什么的答案。
基本上,rsync似乎压缩数据,传输数据,然后解压缩数据。然而,对于我来说,rsync在将数据发送到云之后对其进行解压缩没有多大意义,因为这将需要云服务对数据进行解压缩,我认为这是不会发生的。
我的问题是,rsync和压缩实际上是压缩和解压缩通过WebDav或FTP或其他网络协议发送的数据吗?如果它对我没有帮助,那么在什么情况下压缩标志会对我有帮助,例如,通过USB 2.0进行本地到本地同步?
发布于 2017-04-26 13:10:22
WebDAV文件夹挂载在哪里?
如果它在本地计算机上,您只会获得额外的开销,而不会获得任何性能收益,因为CPU在写入挂载的文件夹之前必须执行双倍的工作来压缩和立即解压缩,然后使用WebDAV协议将其传输到远程服务器。
rsync使用zlib进行传输中的压缩。如果您不执行差异传输,则scp会提供更快的性能,因为用于比较文件目录树中的更改的rsync算法会产生额外开销(尽管scp没有传输中压缩选项)。
不过,压缩并不总是解决问题的办法。如果你的网络是瓶颈,那么它确实会加速进程,但如果你的CPU%达到最大值,它只会使进程变慢。
rsync不压缩JPEG、LZO、LZMA/2、ZIP、GZIP等压缩文件类型(因为压缩这些类型文件的性能折衷比非常低)。
发布于 2022-01-13 14:05:07
rsync,因为版本3.2.0支持的不仅仅是zlib:
--compress, -z
turn on compression
--compress-choice=STR, --zc=STR
choose compression from lz4 (fastest), zstd, zlibx, zlib (slowest), none
--compress-level=NUM, --lz=NUM
zlib and zstd can be tuned with compression level
zlib from 1 (lowest) to 9 (highest), default 6
zstd from -131072 to 22, default 3https://stackoverflow.com/questions/43624832
复制相似问题