1

我正在尝试使用 libssh2 读取大量小文件。我目前正在使用 libssh2_scp_recv/libssh2_channel_read,我也尝试过 libssh2_sftp_open/libssh2_sftp_read。

对于大文件,我可以获得类似于 scp 的速度。但是对于小文件,我大部分时间都是通过打开远程文件(libssh2_scp_recv)的句柄而不是下载文件(libssh2_channel_read)。

scp是怎么做的?有没有一种简单的方法可以批量下载多个文件,这样我就可以使我的连接饱和?

4

1 回答 1

0

除非您在能够使用流水线的 libssh 之上编写自己的 SFTP 层,否则不会。

也许更简单的解决方案是使用多个线程,每个线程都建立一个独立的 SSH 连接,以便并行检索多个文件。

于 2012-11-28T23:03:29.807 回答