首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >文件复制操作的低性能导致大量空闲时间(rsync,cp,.)

文件复制操作的低性能导致大量空闲时间(rsync,cp,.)
EN

Server Fault用户
提问于 2020-06-14 15:49:04
回答 1查看 440关注 0票数 1

目前,我正在将大型目录树从外部HDD复制到服务器的内部存储。拷贝操作的性能基本相当好,即35 of /S与外部硬盘通过USB2连接。

但是,我只获得了大约30,000的性能,然后复制过程没有任何CPU时间。这意味着rsync (也包括cp)不复制任何数据,不更新其标准输出,也不对SIG-项作出反应。大约1分钟后,它又被安排好了,再和35 so /S复制30次,然后什么也没做,等等。

有没有人知道这里会发生什么,或者说出什么工具,我如何才能调查发生的事情?我已经将rsync进程的好值增加到了19,但是这并没有改变任何事情。在rsync的空闲期间,整个系统处于空闲状态(没有其他IO,也没有使用CPU的其他进程。基本上,整个系统是闲置的)。在活动期间,rsync进程有三个线程,它们在“运行”、“不间断睡眠”和“可中断睡眠”之间切换。在非活动期间,所有线程要么处于“不中断睡眠”状态,要么处于“可中断睡眠”状态。因此,我认为rsync必须等待一些持久的IO操作。但我怎么能确定什么手术要花那么多时间?

该系统运行在5.4.341-PvE linux内核上,内部存储器是LVM上的LUKS加密ZFS文件系统。LVM位于mdadm RAID 5的顶部。我用来启动rsync的命令是: rsync -ah --不压缩--进程。

谢谢你的建议!

EN

回答 1

Server Fault用户

回答已采纳

发布于 2020-07-27 15:40:06

我们发现问题是ZFS使用的缓存。问题是我们没有创建额外的读和写缓存。因此,ZFS使用的默认缓存放在包含数据的zpool中/旁边。因此,对于任何读取操作,从RAID中读取数据,写入缓存(也被写入RAID),然后提供给用户。类似于写作。由于RAID是加密的,每个读和写tiggers多个加密/解密和RAID同步,这导致性能下降后一段时间后,RAM缓冲区是满的。

我们通过为ZFS (ZFS中的L2ARC和ZIL )添加额外的读/写缓存来解决这个问题--在我们的示例中,增加了两个小型HDD。即使缓存放在HDD上,读和写速度也要高得多,性能也不会下降。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1021408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档