N2SVCD Configuration - FTPApp

FTP Application Configuration

The N2SVCD FTP Application is a helper gateway application which performs asynchronous FTP client requests to a single configured server. Because this is a blocking operation, the N2SVCD FTP Application spawns child processes which perform the synchronous FTP interaction, while allowing other tests and call processing to continue without interruption.

The following configuration is used to create a FTP Application instance to perform asynchronous FTP requests to a FTP server. A single FTP Application instance will maintain a pool of connections to a single FTP server. If you need to connect to more than one remote FTP server, you must configure multiple FTP Application instances (each with unique names).

In some cases, you may even wish to configure multiple FTP Application instances to the same server. For example, you may wish to use one pool of FTP connections for long-running queries, while creating a second pool for faster and more important queries.

<?xml version="1.0" encoding="utf-8"?>
<n2svcd>
  ...
  <applications>
    ...
    <application name="FTP-SMF" module="FTPApp">
      <include><lib>../apps/db/lib</lib></include>
      <parameters>
        <parameter name="remote_host" value="smf01.telco.com"/>
        <parameter name="username" value="smf"/>
        <parameter name="password" value="top-s3cr3t"/>
        <parameter name="pool" value="3"/>
      </parameters>
    </application>
    ...
  </application>
  ...
</n2svcd>

The application element attributes for a FTP Application instance are:

Attribute Type Description
name String [Required] A unique name for this application instance.
module String [Required] FTPApp
include.lib String [Required] ../apps/ftp/lib
parameters Array [Required] Array of name = value Parameters for this Application instance.
.remote_host String [Required] The IP name or Address for the FTP server.
.username String Username to present to the FTP server as credentials.
.password String Password to present to the FTP server as credentials.
.pool Integer Number of simultaneous child processes to maintain - one FTP server connection per child.
(Default = 2).
.backlog_timeout Integer Number of seconds to wait for a free connection before abandoning the request.
(Default = 10 seconds).
.server_timeout Integer Number of seconds to wait on a submitted request before abandoning the request.
(Default = 20 seconds).
.reconnect_interval Integer Time in seconds between attempts to re-connect a failed FTP server connection.
(Default = 5 seconds).
.ping_interval Integer Time in seconds between 'ping' to check connection on an inactive FTP server connection.
(Default = 60 seconds).