3

我正在使用 SVN 通过站点到站点 VPN 下载文件。下载 java/class 文件时速度为 400kb/s,但下载 .jar 文件时速度下降到 10kb/s。有任何想法吗?

4

1 回答 1

4

java 文件比 jar(这是一个大的二进制文件,充当 zip 存档)小得多,平均速度看起来要快得多,因为下载小文件(几 KB)的时间比 svn 轮询下载速度。
这给人的印象是平均速度很高。

但是对于一个大文件,svn 有时间多次轮询相同的下载速度,并显示实际速度(在更长的时间段内)。


另一个可能影响传输速度的方面是https 会话的双重压缩问题:

当 OpenSSL 使用 zlib 构建时,它会自动压缩通过 SSL 连接发送的所有数据。您可以在初始握手“Client Hello”和“Server Hello”中看到这一点,其中客户端和服务器就要使用的压缩机制达成一致。

如果正在发送或接收的数据已经被压缩,OpenSSL 将对其进行第二次压缩。当发送已压缩的二进制文件(如 .gif 或 .zip)或服务器使用 gzip 编码进行 http 响应时,可能会发生这种情况。这会对性能和内存使用产生影响


Ben Reser评论中添加:
(Ben 是Apache Subversion 项目httpd 项目的完整提交者/PMC 成员)

实际上,您最终最多可以进行 3 层压缩。

  • 明文文件可以被压缩(用户控制),
  • 通过网络发送的颠覆差异格式可以被压缩(通过-cforsvnserveSVNCompressionLevelfor控制httpd),
  • 并且可以压缩磁盘存储库增量格式(将fsfs.conf在 1.9 中配置)。
    众所周知,最后一点会显着降低压缩文件的传输速度,直到 1.9,除了避免将压缩文件添加到 SVN 之外,您实际上无法做任何事情。
于 2014-01-28T07:58:48.920 回答