Amazon Mq
Decoupling Hybrid Applications with Amazon MQ
Section titled “Decoupling Hybrid Applications with Amazon MQ”Amazon MQ Overview
Section titled “Amazon MQ Overview”Service Description
Section titled “Service Description”Amazon MQ is a fully managed message broker service that:
- Facilitates setup, operation, and management of Apache ActiveMQ or RabbitMQ message brokers in AWS Cloud
- Provides queue-and topic-based solutions for loosely coupling applications
- Enables software applications and components to communicate using various programming languages, operating systems, and formal messaging protocols
Core Functionality
Section titled “Core Functionality”Message Broker Capabilities: Amazon MQ connects different software systems that often use different programming languages on different platforms, allowing them to communicate and exchange information.
Managed Service Benefits: As fully managed service, Amazon MQ reduces operational responsibilities by managing:
- Message broker provisioning and setup
- Ongoing maintenance and operations
- Infrastructure scaling and reliability
Industry Standard Protocol Support
Section titled “Industry Standard Protocol Support”Supported Messaging Standards
Section titled “Supported Messaging Standards”Amazon MQ connects to existing applications with industry-standard messaging APIs and protocols:
- Java Message Service (JMS)
- .NET Message Service (NMS)
- Advanced Message Queuing Protocol (AMQP)
- Streaming Text Oriented Messaging Protocol (STOMP)
- Message Queuing Telemetry Transport (MQTT)
- WebSocket
Migration Benefits
Section titled “Migration Benefits”Seamless Integration: Most migrations from existing message brokers to Amazon MQ require minimal code changes:
- Update application endpoints to connect to Amazon MQ
- Start sending messages immediately
- Usually no messaging code rewrite needed
Primary Use Case: Hybrid Cloud Environment
Section titled “Primary Use Case: Hybrid Cloud Environment”Enterprise Integration Challenges
Section titled “Enterprise Integration Challenges”Many organizations, particularly enterprises, rely on message brokers to:
- Connect and coordinate different systems
- Enable distributed application communication
- Serve as technological backbone for IT environment and business services
Hybrid Architecture Solutions
Section titled “Hybrid Architecture Solutions”Mixed Environment Support: Organizations building new cloud applications or lifting-and-shifting to AWS often have:
- Cloud Applications: New applications built for AWS
- On-Premises Systems: Legacy applications too costly to migrate (e.g., mainframe systems)
- Integration Requirement: On-premises applications must interact with cloud components
Amazon MQ Implementation
Section titled “Amazon MQ Implementation”Hybrid Messaging Bridge: Amazon MQ enables message sending between applications in cloud and on-premises to support:
- Hybrid environments
- Application modernization
- Legacy system integration with serverless architectures
Example Architecture:
- On-premises producer application sends messages to cloud consumer application
- Single Amazon MQ for ActiveMQ broker created in Availability Zone
- Broker configured to store messages in EBS volume optimized for low latency and high throughput
- Producer sends messages to ActiveMQ broker, which propagates to message consumer
Lambda Integration
Section titled “Lambda Integration”Serverless Integration: Invoke Lambda functions from queues and topics managed by Amazon MQ brokers to integrate legacy systems with serverless architectures.
Choosing the Right Decoupling Solution
Section titled “Choosing the Right Decoupling Solution”Decision Matrix
Section titled “Decision Matrix”Applicability:
- Hybrid applications
- Message broker migration
Messaging Model:
- Producer-Consumer
- Publisher-Subscriber
Programming API: Industry standard message broker APIs
Pricing Model:
- Pay per hour
- Pay per GB
Applicability: Cloud-centered applications
Messaging Model: Producer-Consumer
Programming API: Amazon SQS API
Pricing Model: Pay per request
Applicability: Cloud-native applications
Messaging Model: Publisher-Subscriber
Programming API: Amazon SNS API
Pricing Model: Pay per request
Recommendation Guidelines
Section titled “Recommendation Guidelines”Use Amazon MQ When:
- Integrating on-premises applications with cloud applications
- Moving existing message brokers to the cloud
- Using messaging in existing applications
- Need support for open standard APIs and protocols (JMS, AMQP)
- Want to reduce broker maintenance and licensing costs while improving stability
Amazon MQ Benefits for Migration:
- Switch from any standards-based message broker
- Reduce broker maintenance overhead
- Lower licensing costs
- Improve broker stability and reliability
Use Amazon SQS/SNS When:
- Building new applications in the cloud
- Want queue and topic services using APIs
- Don’t need to set up message brokers
- Prefer request-based pricing model
Pricing Considerations
Section titled “Pricing Considerations”Amazon MQ Costs:
- Time message broker instance runs
- Monthly storage usage
- Data transfer fees
SQS/SNS Costs:
- Monthly API requests
- Number of deliveries (SNS)
- Data transfer fees
Amazon MQ provides the bridge between traditional enterprise messaging and modern cloud architectures, enabling organizations to modernize gradually while maintaining existing messaging investments.
Hybrid Integration