您的位置:首页 > 运维架构 > Linux

Linux rsync 同步大量文件及目录的处理

2015-09-11 10:15 501 查看
简单记录一下,后续补充。

1,之前使用了 rsync 增量同步的方式。即服务端作为生产站点,客户端作为备份站点。当目录文件达18GB时,每个文件20KB左右时,10级目录。光du -sh就会执行7,8个小时。rsync做一次同步时,也需要花费这么长的时间。原因是生产站点记为SiteA,备份站点记为Site B。Site B同步时,需要比较与A的区别,而后才能具体同步对应的文件。实际比较的过程会在Site A上消耗大量的IO,因为Site A需要读取出来,告诉Site B自己是什么样的。通过ionice可以让业务正常触发,但是同步时间过长不能接受。

2,因此,减少比较时间才是本次优化的重点。实际能够解决的有效方式:第一,先记录变化的文件和目录,第二,同步这些变化的目录。关于记录变化的文件和目录这一点,a.可以考虑使用inotifywait,但是我没有试过;b. 自己记录也是一条路,不过多个进程修改时,会破坏事务性,也会增加程序的工作。关于同步这些变化的目录,rsync就可以轻松搞定。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: