项目管理
项目设计原则.
在软件设计之初,我们有一个原则 低成本数据共享
一切都是建立在如何发挥出
去中心化的优势
去构建出一套低成本的协作系统,这不同于中心化系统,所有状态都由中心化系统保存,这会引起一系列问题:
- 数据安全和归属权问题
- 高度依赖中心服务器
- 高订阅费
- …
然而,共享的前提是按照什么粒度去共享,可以小到文件也可以大到磁盘,亦或是文件目录。
这里实现了两种共享模式:
-
基于
项目
的数据分享 -
基于
文件目录
的数据分享
想象项目
是一个装好资料的大文件夹,里面放着你要分享的所有东西:从标签到文件、从协作节点到目录结构,从更新状态到索引。你只需要分享这个“项目”,别人就能获取全部内容。
一个完整的项目包含标签
、目录
、文件
、节点
、更新状态
、索引
等。
任何用户都可加入到共享项目
中
实现基于 P2P网络的低成本数据协作。
私有化项目,供个人保存数据使用
个人项目拥有和共享项目相同存储加密方式,通过私钥来加密数据,公钥来读取数据,这代表你可以随时将个人项目转换为共享项目。
它和共享项目的区别在于它没有开启网络共享。
个人项目可一键转化为共享项目,实现数据共享,通过唯一邀请码邀请其他用户加入项目。
ws0k57k8aE4zxEg8KfEeWMpmVBHoN67nodeadrt2o5jcr3o5a3b7yydb42zpy6j3cnqg37hjy5ijzz6nsxvyw4daai2nb2hi4dthixs64djmnxxey3bfzrw63johi2dimzqf4baaaktart2cgaaycug5eej54bq
退出共享项目后无法重新加入,必须创建通过加入新项目的方式重新加入
共享项目也包含两种共享方式
离线共享模式
Section titled “离线共享模式”共享密钥中包含共享节点的全球寻址名称
,类似于域名,所有节点通过此全球寻址名称
加入到共享项目中。
在线共享模式
Section titled “在线共享模式”共享密钥中包含共享项目寻址名称
,类似于torrent种子的地址,我们可以通过公开Tracker服务器去进行网络寻址,找到在共享项目中节点,并返回该节点的全球寻址名称
,我们就可以通过此全球寻址名称
加入到共享项目中。
两种模式的区别在于是否使用公开的Tracker服务器去进行网络寻址,在线共享模式可以更好的保持连接的通适性,但是也从某种程度上降低了安全性,因为它会公开网络中节点的分布式哈希表,泄漏节点信息。
项目共享使用到的中间件可进行私有化部署
我们提供DNS服务的部署和Relay服务的部署,具体请参照