We have developed a couple of external applications that connect to our Automation Engine systems using the Java Application Interface. In preparation for our upgrade to AE v21, we updated our applications to use uc4.jar v12.3.9. This is the only version of uc4.jar that is able to connect to both v12.3 and v21 systems. (See KB article 232356).
Now, all of our AE systems have been successfully updated to version 12, and it's time for use to begin planning to update our external apps to use uc4.jar v21.
There are some constraints that dictate how we must perform the upgrades:
- uc4.jar v12.3.9 can connect only to regular Communications Processes (CPs).
- uc4.jar v21 can connect only to v21 Java Communications Processes (JCPs).
- We assign CPs for handling connections from external applications to dedicated Net Areas.
- Our applications connect to multiple AE systems, and:
- we need the flexibility of being able to update our applications to uc4.jar v21 independently of one another; and
- these apps in different environments (development, test, production) need to be able to connect to all AE systems.
With these constraints in mind, it became immediately clear that we would have to run dedicated CPs and JCPs in each of the net areas assigned to our external applications. We will therefore follow a staged approach to the migration:
- Start new JCPs in the net areas dedicated to the external applications. Run these side-by-side with the old CPs assigned to the same net areas.
- Once all of the external applications have been updated to use the new v21 uc4.jar, disable & decommission the non-Java CPs in these net areas.
For a while, we will have up wards of 20 (J)CPs running in each AE system. Once the migration is complete, the total number of (J)CPs will go down again.
See also: AWA v21 inter-process communication
------------------------------