下一个: , 上层: Remote repositories


2.9.1 服务器要求

对什么样的机器适合作为一个服务器的快速回答是需求适度—具有 32M 或甚至更少内存的服务器可以处理相当大的具有合理活动数量的源码树。

当然,要精确定位的话就比较复杂。 通过评估已知耗用内存比较大的方面就足以确定服务器的内存需求。 主要有两个方面在此归档;相比之下其它方面占用内存较少(当然,如果你认为不像 BUGS 中描述的那样,请告诉我,以便于我可以更新这个文档)。

第一个方面大内存消耗是当使用 cvs 服务器时进行大量的检出。 对于每一个要求服务的客户机,服务器都提供两个进程。 一般在子进程中应当少占用内存。 而在父进程中的内存消耗,尤其是在网络连接比较慢的时候,内存需求就要比单一目录的尺寸大,大 2M 或更多。

每个 cvs 服务器的尺寸乘以你期待同时有活动的服务器数应该能给出一个对于服务器内存需求的概念。 大多数情况下,父进程消耗的内存多半可以是交换空间而不是物理内存。

大内存消耗的第二个方面是 diff,当检入大批量文件时。 还有对二进制文件操作时。 经验规则要求:在校验文件时提供最大文件尺寸的 10 倍大小的内存,尽管 5 倍大小的内存就够了。 例如,要检入一个 10M 的文件,这时就需要 100M 的内存空间以在机器上做检入(C/S 机制或其它机制的 cvs 服务器)。 这可以是交换空间而不是物理内存。 因为,对服务器内存的占用是暂时的,没有必要专门同时为这样多个检入提供内存。

对于客户机的资源消耗甚至更适度—有足够能力运行操作系统的任何机器应该不会有大问题。

要想了解 CVS 服务器对硬盘的要求,参看 Creating a repository