SSH.NET 比 FileZilla 慢

问题描述

我正在尝试使用 C# 库 SSH.NET 通过 SFTP 将各种文件上传到我的 FTP 服务器(欧洲客户端、美国服务器)。

我尝试使用 FileZilla 处理一个 832 mb 的文件,大约需要 70 秒(13 mb/s)。 使用 SSH.NET 需要超过 10 分钟(1.3mb/s)

测试是在同一个连接上完成的。

我已将 SSH.NET 客户端缓冲区设置为 128 000 000 字节,以尝试使用比仅 32kb 更大的缓冲区,但它不会改变任何内容

SftpClient sftp = Jobfile.SFTPConnect(parameters.GetValue("SFTP"));
sftp.BufferSize = 128000000;

这是我上传文件的 C# 代码

        string JobFileDestinationPath = JobFileDestination.Remove(JobFileDestination.LastIndexOf('/'));
        
        if (!(SFTPCheckIfFileExists(sftpClient,JobFileDestinationPath)))
        {
            SFTPCreateDirectoryRecursively(sftpClient,JobFileDestinationPath);
        }
        using (var fs = new FileStream(JobFileSource,FileMode.Open))
        {
            sftpClient.UploadFile(fs,JobFileDestination);
        }   

你知道提高SSH.NET速度的方法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)