by James Doyle
Openlink systems are comprised of a network of distributed application processes across multiple run sites. A good example of the power of what this can do is the Connex interfacing technology. Connex enables external systems to communicate with the Openlink system by performing actions within it automatically, such as booking trades or updating curves. These actions are facilitated by message exchange between the systems using a text file based document format called XML.
This architecture enables Openlink-side remote, distributed, and parallel processing, in a reliable and scalable fashion. No processing is performed on a human user client desktop; instead application servers run Openlink sessions to perform the jobs.
Key Components and Concepts
When considering the below components and concepts please refer to the architecture diagram at the end to better understand where they fit in.
A Cluster consists of a set of XML processing engines controlled by a single Scheduler, with each engine configured to run on a specified Server.
The key component for all grid services including Connex is the Scheduler. It links the pieces together and serves as the dispatcher for any requests received. A processing cluster is chosen by this; the Server machine does the processing on a XML engine.
A machine service which runs any number of the other components.
XML Processing Engines
The distributed engines across multiple Servers for parallel processing of external requests or generation of requests from the Openlink system.
The link between the external system and the Connex Openlink subsystem.
Typical Technical Architecture
In the below message flow diagram, the blue components denote Connex processes, although Schedulers can be shared with other grid components. Dark blue and light blue are used to denote the multiple Servers. Backup elements are held on the second (light blue) Server.
The Gateway gives and receives requests from external system(s) typically by some sort of middleware layer and passes them to the Scheduler for processing by an engine, which could be on a different machine to the Scheduler itself.
The yellow components denote general Openlink pieces shared with other processing concepts. The black dashed lines are boundaries between communication types – Connex exchanges messages between the blue pieces via special XML structures across Openlink’s messaging layer ECOM.