自建网盘文件存储用 POSIX 文件系统还是 MongoDB 还是 minio 等 OSS?
source link: https://www.v2ex.com/t/840102
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
在尝试自己写一个网盘,了解到文件存储大概可以有三种方式
1.直接存在 POSIX 等文件系统里
2.MongoDB 的 GridFS
3.minio 等 OSS
想请问以上三种有什么优劣?在多用户、文件数少时,哪个会比较省心便捷?另外有一个功能需求是需要在目录 /文件变动时自动增量同步,如果是 POSIX 了解到 inotify+rsync 可以实现,另外两种是否有相似的办法呢?
感谢解答
documentzhangx66 20 小时 38 分钟前
1.MongoDB 后期扩容是所有数据库里最无脑最方便的。无论是扩带宽还是扩存储,直接加节点,跑个加节点的脚本就好。
2.把文件存到 MongoDB 里,直接用数据库方法去进行批量管理,很方便。
劣势:性能一般,存储文件需要切片,会浪费一定空间。
mengyx 10 小时 2 分钟前 via Android
libook 8 小时 27 分钟前
如果只是家庭使用,就用一些 NAS 系统提供的方案就好了,大多是 POSIX 文件系统一把梭,安装配置和维护都比较方便。
pennai 8 小时 10 分钟前
@mengyx 网上搜了圈好像没看到 minio 有云端文件变动事件通知的机制
libook 7 小时 42 分钟前
像 SMB 、FTP 等主流文件传输协议是支持多用户的,SSHFS 、NFS 之类的传输协议是直接复用了 POSIX 文件系统本身的权限机制。
如果你要做安全机制的话,还要看是复用底层系统的安全机制还是自己重新做一套。
所以还是得看你想做什么规模的产品。
documentzhangx66 5 小时 27 分钟前
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK