社区
数据结构与算法
帖子详情
高分求一算法,如何高效扫描远程目录与本地目录同步,判断远程目录是否发生变化
paodan
2009-08-13 10:49:36
如何快速扫描远程目录下某个目录a出现变化(只包括增加文件和修改文件),假如我已经从远程把a复制到本地了,但是我要定时更新本地的a与远程a同步,远程a目录下文件很多,上万个子文件夹,如何高效的扫描到啊?
...全文
1209
54
打赏
收藏
高分求一算法,如何高效扫描远程目录与本地目录同步,判断远程目录是否发生变化
如何快速扫描远程目录下某个目录a出现变化(只包括增加文件和修改文件),假如我已经从远程把a复制到本地了,但是我要定时更新本地的a与远程a同步,远程a目录下文件很多,上万个子文件夹,如何高效的扫描到啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
54 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paodan
2009-09-30
打赏
举报
回复
结了
paodan
2009-09-14
打赏
举报
回复
要结贴了,再加20分
paodan
2009-09-07
打赏
举报
回复
[Quote=引用 51 楼 java2000_net 的回复:]
我认为,把握源头才是关键。能否在复制这一层面做一些文章。
[/Quote]老紫竹能否解释一下这句。个人认为如果不能在远程设置个监控,也只能是全部对远程进行扫描才能知道哪些文件发生变化了
老紫竹
2009-09-07
打赏
举报
回复
我认为,把握源头才是关键。能否在复制这一层面做一些文章。
否则无论怎么样,你也要扫描才知道。
就算你启用了1000个线程,每个定时扫描10个文件夹,也是很耗系统资源的。
hanwangabc
2009-09-07
打赏
举报
回复
帮up
paodan
2009-09-01
打赏
举报
回复
还真是麻烦,只能寻找一个高效的扫描算法了
paodan
2009-08-31
打赏
举报
回复
顶起
paodan
2009-08-30
打赏
举报
回复
[Quote=引用 46 楼 flyinfish 的回复:]
我想你过于执着了,楼上有很多很有意思,很合理的解决方案,你需要做的仅仅是申请所需的权限。
寻求更好的算法和改善现有环境都是解决问题的手段。
[/Quote]楼上的很多建议都很好,但是在实际应用中客户会应为安全问题不给这个权限,再说远程机器很多,要是每台机器都开一个监控,维护成本就会很高。但是要是没开监控,那么效率就是哥很大的问题,所以想寻找一个居中的方法解决。
FlyinFish
2009-08-30
打赏
举报
回复
我想你过于执着了,楼上有很多很有意思,很合理的解决方案,你需要做的仅仅是申请所需的权限。
寻求更好的算法和改善现有环境都是解决问题的手段。
paodan
2009-08-29
打赏
举报
回复
[Quote=引用 44 楼 hciawfhvk 的回复:]
说说我的看法吧,或许对你有帮助。
在远程端品开一扫描文件的WEB SEVICE, 这样在每次需要同步时先调用此服务传入参数,必须包括所SYNC的文件夹和上次SYNC的时间,此方法会在远程机器上运行,只是扫描一个文件夹里的上次更改时间,并将最近更改时间大于上次SYNC时间时,将此文件视为修改的文件或新增的文件,这操作执行时间在远程机上就跟打开一个文件夹本地扫描一样,然后再返回需要重新同步的文件。
上面做完后,再根据所获得的更新文件进行FTP下载服务就可以解决。
[/Quote]对于远程只有访问的权限,没有监控或者其他权限,所以这种方法行不通
zb_fly
2009-08-28
打赏
举报
回复
thinking
paodan
2009-08-28
打赏
举报
回复
顶起
hciawfhvk
2009-08-28
打赏
举报
回复
说说我的看法吧,或许对你有帮助。
在远程端品开一扫描文件的WEB SEVICE, 这样在每次需要同步时先调用此服务传入参数,必须包括所SYNC的文件夹和上次SYNC的时间,此方法会在远程机器上运行,只是扫描一个文件夹里的上次更改时间,并将最近更改时间大于上次SYNC时间时,将此文件视为修改的文件或新增的文件,这操作执行时间在远程机上就跟打开一个文件夹本地扫描一样,然后再返回需要重新同步的文件。
上面做完后,再根据所获得的更新文件进行FTP下载服务就可以解决。
paodan
2009-08-28
打赏
举报
回复
再顶
hanwangabc
2009-08-26
打赏
举报
回复
期待高手
paodan
2009-08-25
打赏
举报
回复
期待大家的意见
paodan
2009-08-24
打赏
举报
回复
[Quote=引用 37 楼 rendao0563 的回复:]
你这个应该就算是自动更新服务吧。一般是这样的。服务端会维护一个xml表。这个表有对应的版本。如果客户端得到这个版本发现必须更新,那就向服务端请求对应的这个表,再根据这个表校验本地数据是否需要更新。
[/Quote]我的意思是本地一台机器有n台远程机器上某个目录的备份,对n台远程机器的目录分别存储,并且数据量很大,如何做到本地快速的增量更新,即本地要同步远程的。对于远程机器只有读取文件权限,不能对其目录远程监控。所以每次要判断远程目录是否发生变化时都得扫描一遍远程目录,这样效率就很低了,不知道还有没有好的办法。
rendao0563
2009-08-21
打赏
举报
回复
你这个应该就算是自动更新服务吧。一般是这样的。服务端会维护一个xml表。这个表有对应的版本。如果客户端得到这个版本发现必须更新,那就向服务端请求对应的这个表,再根据这个表校验本地数据是否需要更新。
showjim
2009-08-20
打赏
举报
回复
[Quote=引用 1 楼 paodan 的回复:]
就是远程文件同步,让客户端与远程端同步,有方法是比较文件名和最后修改时间,但是还是得重新对远程目录全部扫描一遍
[/Quote]
文件夹也有最后修改时间
showjim
2009-08-20
打赏
举报
回复
[Quote=引用 29 楼 paodan 的回复:]
引用 28 楼 sbwwkmyd 的回复:
虽然我不会C++,但是我肯定C++能够监视正常的文件修改.
数据源在远程,远程没有安装客户端,除非种植木马
[/Quote]
既然数据源没法控制,那就只能扫描了.本地程序的关键是你在每个阶段能获取哪些信息,能不能按条件获取信息,比如能不能获取最后修改时间可以决定是否接收文件内容,比如文件长度不等时可以决定是改写本地文件.如果要求本地文件的时间段内准确度高一点,可以改变优先级,先修改文件长度不等的,然后比较文件长度相等的.
加载更多回复(34)
全国院校技能大赛《计算机网络应用》赛项之必备知识点
包含:模块一:无线网络规划与实施 模块二:设备基础信息配置 模块三:网络搭建与网络冗余备份方案部署 模块四:移动互联网搭建与网优 模块五:出口安全防护与
远程
接入 模块六:云计算服务搭建与企业应用
C#开源项目:SiMay
远程
控制管理系统
C#开源项目:SiMay
远程
控制管理系统Gitee仓库截图下方基于原项目仓库readme系统介绍SiMay
远程
控制管理系统是一个Windows
远程
控制系统,底层基于IOCP的异步通信模型...
相同名字比对公式,相似度对比
算法
对像域内的改变肉眼是无法识别出来的,因此通常将对角线右下的所有数值置0之后,即可以不对原图作大的改变(从人眼识别的角度,与原图相似度极高),又可以有效地降低一个图像的大小(至少可以砍一半)。个人感觉,比对...
1小时速通操作系统!期末
高分
通过!#操作系统 #大三 #期末复习 #考研 #速成
例题:在多道批处理系统中,有下列1、2、3、4四个作业,提交时间分别是6.0、6.5、7.0、7.5,执行时间分别是2.0、0.5、0.1、0.2,用先来先服务调度
算法
和短作业调度
算法
进行调度,哪一种
算法
调度性能好些?...
深度学习、机器学习方向计算机毕业设计题目大全(
算法
应用实践类)
手动整理了1500多个深度学习及机器学习相关
算法
在实际应用中的项目,完全可以作为本科生当前较新的毕业设计题目选择方向。讲道理有些题目,比如“用户评分的隐式成分信息的研究”这种题目取的就比较广,有点科学研究...
数据结构与算法
33,009
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章