The latest release Ephesoft Enterprise 2.3 provides Grid computing feature. This powerful feature is useful for distributed workflow and allows to distribute workflow between different servers. This is true for server locations anywhere in the world. For example if the ServerA is located in lets say in California and another ServerB in Germany then the documents can easily be distributed betweenServerA and ServerB. ServerA can be setup to send the imported batch to the ServerB and return back the batch after Review and Validation to ServerA in California.
Before we start the Grid Computing setup, copy and replace the existing batch class BC5 Grid Computing with the one in the Batch Class Templates folder under the SharedFolders. The easiest way to replace the existing batch class with the new one is to import the new batch class and specify the same unc-folder as the old one. This will overwrite the existing batch class.
The following example will elaborate on how two systems can be configured to setup Grid Computing:
Assumptions: We will assume that you already have an established FTP server to which Ephesoft can connect to.
1. The first step is to connect both Ephesoft servers to a common FTP server. This connection is very important as both Servers will send batches back and forth via this FTP server. When a batch is imported in the unc-folder in the main computer it uploads the batch on this FTP server and notify another computer that the new batch has been uploaded. Upon notification it downloads the batch and perform the remaining workflow and upload the processed batch back to the FTP server and notify the remote machine that batch has been uploaded. Make the following changes in order for ephesoft system to connect to the FTP server on both machines:
Navigate to the C:\Ephesoft\Application\WEB-INF\classes\META-INF\dcma-ftp and open the .properties file, it should look like this
ftp.server.url=ftp.yourdomain.com ftp.server.username=username ftp.server.password=password ftp.number_of_retries=3 ftp.upload_base-dir=batches_folder #timeout in milliseconds ftp.data.timeout=600000
Important : ftp.upload_base_dir is the main folder which reside in the ftp.yourdomain.com server. This folder name can be any folder users want the batches to be uploaded. The folder specified in this field must be existing in the ftp.yourdomain.com.
Note: Above image is only an example make the changes accordingly to match your server url, username and password.
The above mentioned file will have same settings on both ServerA and ServerB.
2. Navigate to C:\Ephesoft\Application\WEB-INF\classes\META-INF\dcma-workflows and open the dcma-workflows.properties , change the wb.hosturl with your localhost url.
dcma-workflow ServerA SETTING:
#Workflow deploy property changed. #Tue Aug 09 14:51:56 PDT 2011 email@example.com dcma.batch.status.cronjob.expression=0/5 0/1 * ? * * workflow.deploy=false workflow.error.subject=Error in workflow execution\!\! dcma.pickup.cronjob.expression=0/5 0/1 * ? * * server.instance.resume.capacity=4 wb.folderPath=test dcma.resume.cronjob.expression=0/5 0/1 * ? * * server.instance.pick.capacity=3 firstname.lastname@example.org server.instance.max.process.capacity=5 wb.hostURL=http\://ServerA.yourdomain.com/dcma/rest
dcma-workflow ServerB SETTING:
#Workflow deploy property changed. #Tue Aug 09 14:51:56 PDT 2011 email@example.com dcma.batch.status.cronjob.expression=0/5 0/1 * ? * * workflow.deploy=false workflow.error.subject=Error in workflow execution\!\! dcma.pickup.cronjob.expression=0/5 0/1 * ? * * server.instance.resume.capacity=4 wb.folderPath=test dcma.resume.cronjob.expression=0/5 0/1 * ? * * server.instance.pick.capacity=3 firstname.lastname@example.org server.instance.max.process.capacity=5 wb.hostURL=http\://ServerB.yourdomain.com/dcma/rest
3. Last change we need to make is the Ephesoft Batch Class Management UI under the modules. Ephesoft allows its user to select any Module or workflow stage at which the systems will distribute work to other machines. In this example we setup main machine to upload batch on FTP server and notify the remote machine when in the Page Process module and remote machine will process and upload the batch back to the FTP server when in the export module to make the following changes open the Batch Class Management page, Choose BC5 or GridComputing and click EDIT.
Select Page Process module and change the following fields accordingly, following image gives an example how it should look like
Select Export module and change the following fields accordingly, following image gives an example how it should look like
The Remote Batch Class Identifier field is important as this specifies which batch class does the batch belong to.
Click OK and Apply the settings. Now the systems are ready to perform the grid computing. To test if it is working drop a batch in the public-unc-GridComputing folder in the ServerA.