使用libssh2读取大量小文件的性能问题

时间:2012-11-28 14:21:26

标签: libssh2

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

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

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

1 个答案:

答案 0 :(得分:0)

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

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