Pairing | |||||||
Theory of Operation | |||||||
Pairing is a method by which two
or more servers which are running Integration Tool can work together to
process the same workflows. Only those workflows that share the same
hotfolder or external trigger (like FTP, JobTicket, Query etc.) will be
paired. In the "Pairing Configuraton" you can configure per server which
Daemons should be included in the Pairing mechanism. Each enabled Daemon
will on startup determine which workflows are suitable for pairing and
register itself in the configured pairing-database. When a paired workflow
starts running it will first check in the pairing-database if another
partner-server is already processing the same workflow. If so, the
worklfow won't be executed by this daemon. The "Pairing Configuration" allows you to configure names for the hashing- and partner tables. All partner-servers which share the same database and the same table-names will be paired together. Using different table-names for different servers you can configure which servers should be in the same pairing-group. This way different pairing-groups can be stored in the same database. The pairing mechanism ensures that if one partner-server fails, the other server(s) will seamlessly take over the processing of the paired workflows. This makes pairing both a kind of load-balancing and fail-over mechanism. On a more technical level: Each time a paired-workflow starts to run, it checks the hashing-table to find out if another partner-server is already processing a workflow with the same trigger-settings. If not, a hash-code is generated from the trigger-type (Hotfolder, FTP, Query), inserted in the hashing-table and the workflow starts to run. This hash-code is the actual "trick" to the pairing mechanism because it is based on the exact trigger-settings (hotfolder-path for Hotfolder-trigger, FTP-settings for FTP-trigger and Query-settings for Database-trigger). This means that if different servers are using the same settings, they will generate the same hash-code. A query can then be executed on the hashing-table to find out if a workflow with this particular hash-code is already being processed. Once a paired-workflow is finished it will remove the hash-code from the hashing-table. | |||||||
Requirements | |||||||
The only requirement for Pairing
to function is to configure the PAIRING preset-database to point to the correct
database(server). Typically this database should be located on different
servers then the partner-servers. It is recommended to use a "real" database-server for Pairing, like SQL-Server or Oracle (not MS-Access MDB). | |||||||
Configuration | |||||||
![]() | |||||||
Paired Daemons
|
The Daemons for which pairing must be enabled. | ||||||
Pairing Database Configuration
|
| ||||||
On-Fail
Option |
This
setting determines what action is taken when the pairing mechanism fails.
Typically this failing is caused by an inaccesible
database.
| ||||||
Save (Test/Configure)
|
When clicked, the pairing settings are saved and the configured database is automatically checked for the necessary tables. If these do not exists, they are created automatically. | ||||||
Save |
When clicked, the pairing settings are saved but the configured database is not automatically checked for the necessary tables. |