2017-09-14 74 views
0

在过去几天里,我一直在用不同的客户端,操作系统,客户端和服务器版本进行Subversion的广泛测试,并注意到Windows客户端连接到Linux服务器时出现了非常奇怪的行为,在sshd进程中使用过多的CPU使用来击中它们,其中Linux客户端不会出现这种行为。Subversion svn + ssh,sshd 100%CPU

样本测试设置如下: 服务器Linux Ubuntu 16.04.3 LTS,OpenSSH_7.2p2 Ubuntu-4ubuntu2.2,OpenSSL 1.0.2g 2016年3月1日,Subversion版本1.9.3(和1.9.7)。 客户端TortoiseSVN 1.9.7

当检查出大型库时,linux服务器在sshd进程中命中,进程运行时CPU使用率为100%。这实际上降低了性能并最终降低了结账运行的速度。连接到同一台服务器的Linux客户端不会在服务器上导致此负载。

即使在关闭压缩和加密Cypher时,也会发生这种情况,以及不同版本的Subversion。行为是相同的。我不确定该解决谁的问题,因为这不仅发生在TortoiseSVN上,而且还发生在SlikSVN上。任何方向将不胜感激。

回答

0

如果您只是想让受控用户访问您的SVN服务器,对于任何Windows 10用户来说,一个简单的解决方法就是让他们使用WSL(Windows子系统Linux版)中的SVN。实际上,我会考虑测试这条路线以隔离客户端与网络堆栈等。

值得注意的是,默认的SVN设置可能是转换行结束符,并且SVN服务器可能会转换每个文件,每行到Windows默认行尾。

可能有更好的答案,但那些是我最初的想法。