http://qs1969.pair.com?node_id=11123604

Sukhster has asked for the wisdom of the Perl Monks concerning the following question:

Hi All,

<< First Time Post >>

I have been using Perl for some years, but mostly for Regex/ DBI usage and would like to use it provide a solution for sending files over SFTP via a REST API. The reason for this is that we need to send a couple of thousand files to a remote server, which has the following restriction on the SFTP connection:

The team is working on a Java Spring solution to the above . . .. but it taking ages, and l would like to ensure that we have a solution and Perl has always been a faster dev curve for me.

I believe that l need to following:

  1. Process which listens to a socket, and forks/create-a-thread for each request
  2. Create a Pool of SFTP connections with Account ID as the primary key for each
  3. Allow this Pool to be shared amongst other processes
  4. When the SFTP connection is returned to the Pool:
    1. we need to run "version" or "ls" every 25 seconds
    2. wrap the SFTP connection into an object which has a isalive function
  5. Return success/ failure after each request

I can see quite a few Server libraries, which do 1 and 5 above - but don't understand how l could share an Object (pool of SFTP connections between them) ... and then more importantly, how l can ensure that there is a thread/while-loop keeping the connection alive.

If libraries/ approach can be provided with code samples or pseudo code - that will really help get me started.

Help Ye Old Perl Monks of Lore !