Amazon MQ 기능
관리형 서비스
Amazon MQ에서는 AWS Management Console, AWS CloudFormation, 명령줄 인터페이스(CLI) 또는 간단한 API 호출을 사용해 몇 분 만에 프로덕션용 메시지 브로커를 시작할 수 있습니다. Amazon MQ는 하드웨어 프로비저닝, 브로커 설정, 소프트웨어 업그레이드, 장애 탐지 및 복구와 같은 관리 태스크를 수행합니다.
보안
Amazon MQ는 저장 메시지와 전송 메시지에 대한 암호화를 제공하므로, 메시지가 암호화된 형식으로 안전하게 저장되도록 보장할 수 있습니다. 브로커에 연결할 때는 SSL을 사용하며, Amazon VPC 내 프라이빗 엔드포인트로 액세스가 제한될 수 있으므로 자체 가상 네트워크에서 브로커를 격리할 수 있습니다.
Amazon MQ는 AWS Identity and Access Management(IAM)와 통합되므로 IAM 사용자 및 그룹이 특정 Amazon MQ 브로커에 대해 어떤 작업을 수행할 수 있는지 제어할 수 있습니다. 애플리케이션에서 브로커로의 인증 자체는 사용자 이름과 암호 기반 인증을 사용하여 제공되고, ActiveMQ 브로커에 LDAP(Lightweight Directory Access Protocol)을 선택적으로 사용할 수 있습니다.
모니터링
Amazon MQ는 Amazon CloudWatch 및 AWS CloudTrail과 통합되어 있습니다. CloudWatch를 사용하면 브로커, 대기열 및 주제에 대한 지표를 모니터링할 수 있습니다. 예를 들어 대기열의 깊이를 모니터링하고 메시지가 전송되지 않는 경우 경보를 생성할 수 있습니다. CloudTrail을 사용하여 Amazon MQ API 호출을 기록하고 지속적으로 모니터링하며 보관할 수 있습니다.
브로커 인스턴스 유형
Amazon MQ는 현재 mq.t3.micro, mq.m5.large, mq.m5.xlarge, mq.m5.2xlarge, mq.m5.4xlarge의 5가지 브로커 인스턴스 유형을 지원합니다. mq.t3.micro 인스턴스는 제품 평가용으로 설계되었고 mq.m5 인스턴스 유형은 프로덕션 워크로드용으로 설계되었습니다. Amazon MQ는 평가와 테스트에 권장되는 단일 인스턴스 배포 모드와 프로덕션에 권장되는 복제된 고가용성 배포 모드를 지원합니다.
종량제 요금
Amazon MQ에서는 비용 효율적이고 유연한 용량을 제공하며 최소 비용이 없습니다. 매월 브로커 인스턴스가 실행된 시간과 사용한 스토리지에 대한 비용을 지불합니다. 용량 추가를 위해 간편하고 저렴하게 새로운 브로커를 생성할 수 있습니다. 자세한 내용은 Amazon MQ 요금 페이지를 참조하십시오.
무료로 시작
AWS 프리 티어에는 최대 750시간의 단일 인스턴스 mq.t2.micro 또는 mq.t3.micro 브로커, 그리고 ActiveMQ 브로커에 대해 매월 최대 5GB의 Amazon EFS 스토리지 또는 RabbitMQ 브로커에 대해 최대 20GB의 Amazon EBS를 1년간 제공합니다.
RabbitMQ 기능
높은 가용성, 처리량, 메시지 내구성
Amazon MQ의 RabbitMQ 클러스터 브로커는 Amazon EBS가 지원하며 다중 AZ 복제를 사용하여 고가용성과 메시지 내구성을 지원합니다. 노드 간 복제를 위한 데이터 전송은 추가 비용 없이 제공됩니다. 클러스터는 단일 엔드포인트 뒤에서 생성되므로 가용성이 높고, 관리가 간단하며, 애플리케이션에서 쉽게 연결할 수 있습니다.
고급 메시지 라우팅
RabbitMQ 브로커의 메시지는 대기열에 도착하기 전에 교환을 통해 라우팅됩니다. RabbitMQ에는 일반적 라우팅 로직을 위한 교환 유형이 여러 개 내장되어 있습니다. Amazon MQ의 RabbitMQ는 클래식 대기열, 클래식 미러링된 대기열, 쿼럼 대기열을 비롯한 여러 대기열 유형을 지원합니다. 쿼럼 대기열은 RabbitMQ 3.13 이상에서만 지원됩니다. Amazon MQ는 쿼럼 대기열을 워크로드의 기본 복제 대기열 유형으로 사용할 것을 권장합니다.
광범위한 클라이언트 언어 지원
Python, .NET, PHP, Python, JavaScript, Ruby, Java, Go 등 자주 사용하는 프로그래밍 언어를 사용하여 개발하세요.
기타 RabbitMQ 기능
RabbitMQ 기능에 대한 자세한 설명은 RabbitMQ 웹 사이트를 참조하세요.
ActiveMQ 기능
높은 가용성, 처리량, 메시지 내구성
ActiveMQ용 Amazon MQ는 Amazon Elastic File System(Amazon EFS)이 지원하는 내구성 최적화 브로커를 제공하여 고가용성과 메시지 내구성을 지원합니다. Amazon Elastic File System(Amazon EFS)이 지원하는 내구성 최적화된 브로커는 여러 가용 영역(AZ)에 걸친 중복 방식으로 메시지를 저장합니다. 액티브-대기 브로커는 브로커나 AZ가 실패할 경우 자동으로 대기 인스턴스로 장애 조치되므로 계속해서 메시지를 보내고 받을 수 있습니다.
또한 Amazon MQ는 Amazon Elastic Block Store(EBS)가 지원하는 처리량 최적화 메시지 브로커 생성을 지원하며 대량 주문 처리, 주식 거래, 텍스트 처리 등과 같은 높은 처리량이 필요한 사용 사례에 적합합니다. 처리량 최적화 메시지 브로커는 Amazon MQ를 사용해 필요한 브로커 수와 대용량 애플리케이션 운영 비용을 줄입니다.
업계 표준 API 및 프로토콜
ActiveMQ는 Java Message Service(JMS v1.1 및 JMS v2.0)와 .NET Message Service(NMS)를 비롯한 다양한 클라이언트와 Node.js, Go, Python, Ruby, C++를 비롯한 기타 다양한 언어를 지원합니다. ActiveMQ는 AMQP, STOMP, OpenWire, WebSocket, MQTT를 비롯한 유선 레벨 프로토콜도 지원합니다. 업계 표준과의 호환성 덕분에 기존 메시지 브로커에서 간편하게 마이그레이션하고, 공급업체 간 상호운용성을 지원하며, 공급업체에 종속되는 것을 방지할 수 있습니다.
JMS 메시징 기능
ActiveMQ는 지점 간(메시지 대기열), 게시-구독(주제), 요청/회신, 영구 및 비영구 모드, JMS 트랜잭션, 분산(XA) 트랜잭션을 비롯하여 모든 표준 JMS 기능을 지원합니다. 기본 대기열 및 주제뿐만 아니라 ActiveMQ는 복합 대상(생산자가 같은 메시지를 여러 대상에 전송할 수 있고 실시간 분석에 유용함) 및 가상 대상(게시자가 주제를 통해 메시지를 대기열을 거쳐 구독하는 수신자 풀로 브로드캐스트함)과 같은 좀 더 복잡한 패턴도 지원합니다.
기타 ActiveMQ 기능
ActiveMQ 기능에 대한 자세한 설명은 Apache ActiveMQ 웹 사이트를 참조하세요.