请问同步盘的本地与服务器同步是如何实现的?

2019-10-19 11:19:10 +08:00
 limyel

毕设想做一个类似坚果云的同步盘(简略粗糙版),web 端 打算用 Django 或者 Flask。

但是本地与服务器同步这里遇到了个问题:因为需要运行一个 web 端,所以本地与服务端同步、传输文件是直接向 web 发起 http 请求还是再在服务端写一个 socket 来处理?

不知道我这样描述有没有清楚...感觉就是同步、传输文件是用 BS 还是 CS ?

希望 v 站的前辈们给点想法哈

3264 次点击
所在节点    Python
8 条回复
caola
2019-10-19 11:54:43 +08:00
linux 自带的 rsync 就能满足大多数的同步需求 (
janxin
2019-10-19 11:54:49 +08:00
BS 还有 websocket 实现实时通讯呢。答案肯定是都可以啦
ztcaoll222
2019-10-19 13:11:44 +08:00
自己实现一个 rsync, 我记得 zlib 有相关的函数
realpg
2019-10-19 13:24:04 +08:00
怎么都行 你甚至可以直接内嵌个 rsync
Trim21
2019-10-19 13:24:44 +08:00
都可以 你甚至可以直接把整个文件 post 上去,然后服务端替换掉硬盘上的文件

我之前写过一个 python 的同步盘服务器是这么干的(
limyel
2019-10-20 20:59:50 +08:00
@caola
@ztcaoll222
@realpg

感谢指点!
limyel
2019-10-20 21:00:53 +08:00
@Trim21

这样的话服务端同步到客户端怎么做呢
Trim21
2019-10-20 21:05:42 +08:00
@limyel #6 我当初偷懒直接搞了客户端定期检查,应该有更好的方案比如 websocket 之类的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/610886

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX