Table of Contents
Problem Statement
- The client uses an existing integration subsystem of their Assembly Line Control System, to transport data to and from other manufacturing systems.
- The subsystem interfaces to eleven internal systems and has over sixty data feeds.
- The subsystem uses four transport mechanisms. Most data feeds use MQFT (WebSphere MQ File Transfer) an inhouse developed file transfer mechanism providing the ability to send and receive files to and from the Mainframe. The remaining data feeds use MFT (Managed File Transfer) which is the client’s standard file transfer mechanism, FTP (File Transfer protocol) or WebSphere MQ.
- The data feeds consist almost entirely of text files with fixed width fields either one record per line or a header with multiple records followed by footer, there are a handful of data feeds that deviate from this style.
- As the use of the existing Assembly Line Control System has spread throughout the region, number of issues with the subsystem have been identified, including multiple versions of the subsystem, difficulty in configuring and setting up the system, limited support documentation and limited or non-existent test support.
- The objective of the project is to produce an Integration Platform that is stable, reliable, easier to test and validate, easier to setup and support.
- While maintaining the existing data feed formats for backward compatibility, the new integration platform will provide an alternative to use json/xml format content that is easier to enrich and closer to real time. The data feeds that are similar will also be combined into one based on the entity types to reduce maintenance costs in the long run.
Solution
- Each data feed handler (the program logic to process a specific input or output) has been implemented as an Apache Camel route and hosted on Red Hat JBoss Fuse 6.3
- Analyzed all existing integration points and converted them to microservices. Some of the microservices have been implemented to read from Active MQ and send out the data in file format. Some of the microservices have been exposed as REST for other systems to consume.
- Implemented appropriate changes to the Assembly Line Control System. There are no coding changes to other systems as they can continue to send/receive the data in same way.
- Integrated open-source quartz scheduler for regular scheduled activities.
- The platform uses JAAS (the Java Authentication and Authorization Service) which is the Java implementation of the standard pluggable authentication module (PAM) framework. It also supports DB authentication using JAAS JDBC and LDAP authentication using JAAS LDAP.
- Consuming components/applications can choose to handle the events as they see fit.
- A web console was created to configure & test camel routes, manage the schedules and troubleshoot any failures.
- The integration platform has been extended to include events from other manufacturing systems.
Benefits
- Standard integration platform for all manufacturing systems.
- Extensible and easy to use platform
- User friendly Web console
- No impact to other systems.
- Highly reliable and scalable platform.
- Cloud compatible architecture.