A global financial institution is migrating a legacy mainframe application that processes millions of transactions daily to AWS. The mainframe uses a proprietary queuing system for inter-application communication and batch processing. The new AWS-based microservices architecture needs to integrate with existing on-premises applications that still rely on this mainframe queue for some time. The integration must be highly reliable, ensure message ordering, and be able to handle potential network disruptions without data loss. Which architectural approach should be implemented?
- AUse Amazon SQS Standard queues for all message exchanges between AWS and on-premises applications.
- BConfigure AWS Lambda functions to poll the mainframe queue directly via a secure VPN connection.
- CDevelop a custom adapter on-premises to translate messages and push them to an Amazon Kinesis Data Stream.
- DImplement a hybrid messaging solution using AWS MQ for RabbitMQ on AWS, with an on-premises queue mirroring the mainframe queue, and a reliable bridge to AWS MQ.
Show answer & explanationAnswer & explanation
Correct answer: D. Implement a hybrid messaging solution using AWS MQ for RabbitMQ on AWS, with an on-premises queue mirroring the mainframe queue, and a reliable bridge to AWS MQ.
AWS MQ for RabbitMQ offers a fully managed message broker compatible with industry-standard protocols, which can reliably integrate with existing on-premises messaging systems. By mirroring the mainframe queue on-premises and bridging to AWS MQ, message ordering, reliability, and resilience to network disruptions can be maintained, ensuring no data loss for critical financial transactions.
Why the other options are wrong
- A. Amazon SQS Standard does not guarantee message ordering, which is critical for financial transactions, and might not be suitable for direct integration with a proprietary mainframe queue.
- B. Polling a mainframe queue directly from AWS Lambda over VPN introduces latency, potential for connection issues, and complexity in managing state and ensuring reliable delivery and ordering without a dedicated messaging solution.
- C. Kinesis Data Streams are suitable for high-throughput real-time data streaming but are not a message queuing system designed for guaranteed delivery and complex routing typically found in enterprise messaging, nor do they directly integrate with proprietary mainframe queues.
Hybrid Messaging with AWS MQ
Integrating on-premises messaging systems with AWS cloud applications using AWS Managed Message Queue (MQ) services like RabbitMQ or ActiveMQ.
- Provides managed, highly available message brokers compatible with popular open-source engines.
- Enables reliable, asynchronous communication between hybrid environments.
- Supports standard protocols, facilitating integration with existing enterprise systems.
Memory trick: Mainframe needs a managed MQ bridge for smooth cloud talks.