Mainframe Service Request Orchestrator for High-Volume Trade Orders
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mainframe computer systems in order management systems face limitations due to a limited number of socket connections, leading to reduced capacity to handle concurrent service calls during high trading activity, resulting in delayed trade orders.
Innovation Solution
Implementing a Service Request Manager (SRM) at the distributed client side to aggregate multiple concurrent calls into a single composite call, which is transmitted to the mainframe using a single socket, allowing the mainframe to process more service calls simultaneously and reducing the need for repetitive calls by utilizing a cache and adaptive protocols like SOAP, REST, and MQ.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If each service call uses a separate socket connection, then the mainframe can process individual calls reliably, but the number of simultaneous service calls is limited by the limited number of available socket connections
Solution Approach 1:
Multiple individual service calls are merged into a single composite service call that is transmitted over one socket connection. The Service Request Manager aggregates service requests from multiple distributed clients and combines them into composite calls, which are then processed by the mainframe and disaggregated back into individual responses. This merging approach allows the mainframe to handle many more simultaneous service calls than the number of available socket connections would otherwise permit.
2Reliability
If multiple separate mainframe calls are made to validate a trade order, then data validation is thorough, but the response time increases during high trading activity
Solution Approach 1:
The Service Request Manager performs preliminary aggregation of multiple service calls into a single composite call before transmission to the mainframe. By preparing and bundling the service requests in advance, the system reduces the number of separate round-trip communications required, thereby decreasing the overall time for order validation while maintaining the thoroughness of data validation through the composite call structure.
3Productivity
If the mainframe handles a limited number of socket connections, then connection management is simplified, but the capacity to handle concurrent trade orders during high activity periods is reduced
Solution Approach 1:
The Service Request Manager acts as an intermediary between distributed clients and the mainframe. It manages the complexity of socket connection management on the client side by aggregating multiple service calls into composite calls that use fewer socket connections. This intermediary layer shields the mainframe from the complexity of managing numerous individual socket connections while enabling the system to handle a much higher capacity of concurrent trade orders.
4Reliability
If multiple SSL/TLS handshakes are performed for each service call, then security is maintained, but the number of handshakes increases system overhead and reduces efficiency
Solution Approach 1:
Multiple SSL/TLS handshakes are merged into a single handshake by combining multiple service calls into one composite call. Since the composite call is transmitted over a single socket connection, only one SSL/TLS handshake is required to establish secure communication, thereby maintaining security while significantly reducing the overhead associated with multiple handshakes and improving overall system efficiency.
Data Source
AI summary
Efficient, reusable, extensible light weight framework orchestrates discrete mainframe service calls as a single composite service call. The single composite call requires a single mainframe socket and the mainframe disaggregates the composite service call upon receipt to process the individual service calls therein, thereby allowing the mainframe to handle more services calls simultaneously. A similar framework orchestrates distributed service calls from a mainframe client.


