如何为许多用户使用modeshape

时间:2014-02-17 22:58:12

标签: java jcr modeshape

目前我想知道如何管理拥有自己数据的模式中的大量用户(几乎没有共享)。 我正在考虑的问题的一个例子是Dropbox模型:每个人都有自己的私人文件保管箱,不一定与其他人共享。

我应该为每个用户创建一个新工作区,还是最好有一棵大树,在根节点下,所有用户都有节点?

modeshape工作区的数量是否有限?

感谢任何提示。

1 个答案:

答案 0 :(得分:1)

ModeShape中的工作空间数量存在实际限制,因为它们需要进行管理,并且此管理不是为支持无限数量的工作空间而设计的。通常,JCR意味着工作空间之间存在某些特定行为,并且JCR人员从未打算使用工作空间separate users' independent data

我建议使用单个存储库和工作空间来存储所有用户的所有内容,其中工作空间的节点层次结构用于与特定用户隔离和关联内容。请注意,JCR特别是一个分层数据库:不要将所有用户放在单个节点下,因为这会创建一个非常平坦的层次结构(在任何JCR实现中都不能很好地工作)。相反,只需根据您的用户名或用户ID创建一个小的层次结构。 (请注意,即使文件系统也有其限制:您不能将数百万个文件放在一个文件夹中。)

实际上,这与使用关系数据库为大量用户存储数据的情况没有什么不同。很少有架构会为每个用户创建一个新的数据库;相反,该服务可能使用单个数据库,其中每一行与单个用户相关联,并且该服务执行安全性和强制执行。