我想知道SVN是否能够支持多less用户和存储库的特定限制?
谢谢。
Subversion没有内置的限制。 但是,如果知识库被大量使用,则会有实际的限制。
你可能有一个误解,导致你相信你在安装时做了一些特殊的事情来select限制。 你没有。 当你使用'svnadmin create / path / here'命令的时候,就是当你select使用后端的东西的时候。 只要使用默认值,那就更好了。
有一些事情要考虑。 例如,如果您有1亿个存储库全部来自同一台计算机,那么磁盘和/或CPU将最终超出。 我怀疑磁盘会先。
你可能想看看颠覆评价页面: Subversion Testimonials
我认为你必须做出的最大决定是决定是去Berkely DB后端还是FSFS后端。
我不这么认为,虽然很明显我还没有testing过一百万用户。但是我知道一个网站 – 谷歌代码使用svn,它有相当多的代码和用户。
就我而言,我们使用活动目录集成(通过VisualSVN服务器),所以我们实际上受到AD限制(我认为大概是20亿个对象)的限制。 我拥有一个12Gb大小的SVN回购协议,所以它可以非常高兴地扩展到大型版本库,即使它在虚拟机中运行,速度对于我们的回购也不是问题。
为了进一步的可伸缩性,你可以使用svnsync来分配负载来创build镜像。
总之,我不认为你会发现它的可扩展性问题。
不,不。
您可以在服务器之间分配大量使用的存储库的负载。
你可以设置
也似乎FSFS存储库可以通过NFS安全共享,所以你可以有几个SVN节点通过NFS服务于同一个存储库。 这可能不会很好地扩展。
在极端情况下,您可以像Google一样开发自己的仓库后端。
请记住pipe理SVN数据库的系统的局限性。 它们可能具有限制,例如用户数量或正在使用的文件或目录数量的可伸缩性问题。 例如,Linux ext3 fs可能会线性search目录,这可能是数百万回购的问题。 可能还有其他限制,例如在系统上注册的用户数量。 研究这些领域并进行必要的testing。
Re:testing。 您可以使用shell脚本来生成您希望使用的许多用户。 然后使用另一个脚本为每个用户生成回收站,并使用您通常所期望的文件数量。 创build一个全面的testing套件超出了可以在这里展示的范围。 希望能让你走上正轨。