草庐IT

windows - Windows 上的 svn 客户端非常慢,Linux 上的 svn 客户端非常快

coder 2023-11-12 原文

我被迫使用位于我们的 windows 域中的 visual-svn-server。问题是与 Windows 客户端一起使用非常慢。奇怪的是,同一个存储库在 linux 客户端上运行速度非常快。区别就像 3 秒和 90 秒。我知道应该有人修复服务器,而不是我尝试修复客户端,但我没有改变这样做。

所以,为了调试这个问题,我用 wireshark 做了一些包捕获,它看起来像 Windows,当做“svn up”(在最新的存储库上)时,在实际再次与实际的 svn- 交谈之前做了很多 ldap-negotiations服务器。这需要时间。 Linux svn 客户端在执行“svn up”时不执行任何 ldap 调用。问题不在我的机器上,而是在我所有同事的 Windows 客户端上。

我尝试使用配置选项 http-auth-types ( http://svnbook.red-bean.com/en/1.7/svn.advanced.confarea.html ) 强制 svn 客户端进行“基本”身份验证,但没有帮助。我认为那将是基本的,没有 ldap,http-basic-auth。我能够确认该设置已包含在内,因为将其设置为“摘要”表示身份验证方法不可用。但即使这样也需要大约 60 秒,所以我的猜测是它在尝试进行身份验证之前执行 ldap-wacko 操作。

我使用的 Subversion 客户端是来自 Tortoise SVN 官方构建的 1.8 系列。我确实也尝试过 slicksvn 客户端,但它确实有同样的问题。 svn 版本显示 ra_serf 正在处理 https 请求,我的存储库是位于 https://my_server_intra_dns_name/

的 visual-svn 服务器

当用浏览器打开地址时,它又很快了,所以问题不应该是 dns 或类似的。

我是 linux 专家,所以我对 windows 有点迷茫,但是有人知道 wtf 是怎么回事吗?

----编辑---- 我还在 Windows 主机上将 linux 作为 guest 操作系统,并且在 linux 中执行 svn up 大约需要 3 秒,将其与 native Windows 'svn.exe up' 进行比较,后者占用了 1 分钟!

最佳答案

如果 Windows 机器与 Internet 的连接受限,那么您可能会注意到在通过 HTTPS 针对远程存储库运行 Subversion 客户端命令时出现延迟。

使用流量分析器您会注意到,当 Windows 尝试访问 ctldl.windowsupdate.com 并超时时会发生延迟。 Windows 尝试访问 ctldl.windowsupdate.com 以检查 Certificate Trust List (i.e. Certificate Revocation List) .由于 Internet 连接受限,Windows 可能无法访问它,从而导致这些延迟。

如果不是你的情况,那么我建议 contacting VisualSVN's support team for investigation .

关于windows - Windows 上的 svn 客户端非常慢,Linux 上的 svn 客户端非常快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26057916/

有关windows - Windows 上的 svn 客户端非常慢,Linux 上的 svn 客户端非常快的更多相关文章

  1. ruby - 在 Ruby 程序执行时阻止 Windows 7 PC 进入休眠状态 - 2

    我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0

  2. ruby-on-rails - date_field_tag,如何设置默认日期? [ rails 上的 ruby ] - 2

    我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问

  3. ruby-on-rails - openshift 上的 rails 控制台 - 2

    我将我的Rails应用程序部署到OpenShift,它运行良好,但我无法在生产服务器上运行“Rails控制台”。它给了我这个错误。我该如何解决这个问题?我尝试更新ruby​​gems,但它也给出了权限被拒绝的错误,我也无法做到。railsc错误:Warning:You'reusingRubygems1.8.24withSpring.UpgradetoatleastRubygems2.1.0andrun`gempristine--all`forbetterstartupperformance./opt/rh/ruby193/root/usr/share/rubygems/rubygems

  4. ruby-on-rails - 相关表上的范围为 "WHERE ... LIKE" - 2

    我正在尝试从Postgresql表(table1)中获取数据,该表由另一个相关表(property)的字段(table2)过滤。在纯SQL中,我会这样编写查询:SELECT*FROMtable1JOINtable2USING(table2_id)WHEREtable2.propertyLIKE'query%'这工作正常:scope:my_scope,->(query){includes(:table2).where("table2.property":query)}但我真正需要的是使用LIKE运算符进行过滤,而不是严格相等。然而,这是行不通的:scope:my_scope,->(que

  5. ruby - 在 Windows 机器上使用 Ruby 进行开发是否会适得其反? - 2

    这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby​​-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub

  6. Vscode+Cmake配置并运行opencv环境(Windows和Ubuntu大同小异) - 2

    之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m

  7. 深度学习部署:Windows安装pycocotools报错解决方法 - 2

    深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal

  8. ruby-on-rails - 使用 HTTParty 的非常基本的 Rails 4.1 API 调用 - 2

    Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"

  9. ruby-on-rails - Ruby - 如何从 ruby​​ 上的 .pfx 文件中提取公钥、rsa 私钥和 CA key - 2

    我有一个.pfx格式的证书,我需要使用ruby​​提取公共(public)、私有(private)和CA证书。使用shell我可以这样做:#ExtractPublicKey(askforpassword)opensslpkcs12-infile.pfx-outfile_public.pem-clcerts-nokeys#ExtractCertificateAuthorityKey(askforpassword)opensslpkcs12-infile.pfx-outfile_ca.pem-cacerts-nokeys#ExtractPrivateKey(askforpassword)o

  10. 带有 attr_accessor 的类上的 Ruby instance_eval - 2

    我了解instance_eval和class_eval之间的基本区别。我在玩弄时发现的是一些涉及attr_accessor的奇怪东西。这是一个例子:A=Class.newA.class_eval{attr_accessor:x}a=A.newa.x="x"a.x=>"x"#...expectedA.instance_eval{attr_accessor:y}A.y="y"=>NoMethodError:undefinedmethod`y='forA:Classa.y="y"=>"y"#WHATTT?这是怎么回事:instance_eval没有访问我们的A类(对象)然后它实际上将它添加到

随机推荐