调整mercurial服务器并识别瓶颈

时间:2014-08-19 22:05:58

标签: mercurial

我有一个非常大的mercurial repo,初始克隆需要几个小时。克隆通过https,通过scmmanager完成。如果可能的话,我想尝试将其缩短到几分钟。

我的mercurial repo正在一台24核的服务器上运行,从我的工作站进行克隆时负载大约是2。我想知道如何在服务器上调整mercurial以使用更多内核。 iowait是0.网络流量在服务器上很低,iftop显示5Mb / s TX,我有千兆以太网。总共64演出中使用了4演唱会,24演出用于磁盘缓存,1.5演出用于缓冲。

在我的工作站上,我尝试将hg重命名为-5。负载约为0.5。我的工作站有8个核心。我的工作站也有千兆以太网,并且看到最小流量,大约2 Mb / s RX。 iowait在我的工作站上也是零。

mercurial服务器的操作系统是CentOS 6.工作站的操作系统是Debian jessie。任何想法将不胜感激。

编辑:尝试通过ssh进行克隆以及本地非硬链接的未压缩克隆。两者都需要很长时间。 (小时)回购大小为8演出。不确定如何继续。

2 个答案:

答案 0 :(得分:1)

对于Mercurial,克隆本身的操作非常复杂。怀疑scmmanager。尝试使用ssh:// URL直接从filesytem克隆,加载应该只是zilch。

还尝试使用--uncompressed禁用克隆上的压缩。如果它有助于hgweb在服务器端进行设置。

答案 1 :(得分:0)

您的存储库的总大小是多少?

Ry4an提出的建议,确实应该解决你的问题。如果他们不这样做,您还可以创建一个包并将其转移到初始克隆。有关详细信息,请参阅hg help bundle。 基本上:这会创建一个包含修订的文件(在您的情况下,您将要使用'--all')以确保它包含整个存储库)。然后,您可以使用wget或任何其他命令下载文件(速度应该比5 Mbps快得多)。