Question

what is the best way to upload files parallely using sftp ?
using multithreading and multi-process is the only options ?
can we use any of the gems for that ?
I using ruby 1.8.6.

Was it helpful?

Solution

Net::SFTP's upload method (without bang) operates asynchronously, i.e. in parallel.

From the docs:

Or, if you have multiple uploads that you want to run in parallel, you can employ the wait method of the returned object:

uploads = %w(file1 file2 file3).map { |f|
  sftp.upload(f, "remote/#{f}")
}
uploads.each { |u| u.wait }
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top