ApsaraMQ for RocketMQ는 엔터프라이즈급 인터넷 아키텍처의 핵심 제품인 전문 메시지 미들웨어입니다. 마이크로서비스, 분산형 시스템, 서버리스 애플리케이션 간의 안정적인 메시지 기반 비동기 통신을 지원합니다. 이 서비스를 사용하면 느슨한 결합과 고가용성을 갖춘 확장 가능한 분산형 시스템을 쉽게 구축할 수 있습니다.
ApsaraMQ for RocketMQ는 11년 이상 Alibaba Group의 인프라에 통합되어 있으며 Alibaba의 광군제(11/11) 이커머스 판매 행사를 9년 동안 서비스하고 있습니다. 낮은 레이턴시, 높은 동시성, 고가용성, 높은 안정성, 강력한 메시지 스택 기능이 특징이며 조 단위의 데이터 홍수를 지원합니다. MQ를 사용하여 규모에 관계없이 애플리케이션 구성 요소 간에 데이터를 자유롭게 전송할 수 있습니다.
혜택

-
고성능 및 낮은 레이턴시
Message Queue는 동시성 및 성능 상한 제한 없이 1,000만 수준의 초당 쿼리 수(QPS)와 1조 수준의 메시지 흐름을 지원합니다

-
높은 신뢰성
Message Queue는 서버 간 동기식 이중 쓰기, 초삼중 복사 데이터 이중화, 빠른 전환 데이터 복사 기술을 지원하여 최대 99.99999999%의 데이터 안정성을 보장합니다.

-
높은 확장성
Message Queue는 1만 개의 메시지 큐를 지원합니다. 대기열 수는 탄력적으로 확장할 수 있으며 클러스터 규모도 자동으로 확장할 수 있습니다. 이 프로세스는 사용자에게 완전히 투명하게 공개됩니다.

-
권한 제어
Message Queue는 메시지 토픽 및 소비자 ID별로 각 메시지의 송수신 권한을 제어하여 메시지 보안을 보장합니다
특징
-
고성능 및 낮은 레이턴시
ApsaraMQ for RocketMQ는 대규모 메시지 스택이 있는 경우에도 클러스터 서비스에 영향을 주지 않고 고성능을 보장합니다. 이는 부하 이동(플러드 스토리지) 중에 특히 중요합니다.
Alibaba Cloud의 기술팀은 수년간 Alibaba의 연례 광군제(11/11) 이커머스 이벤트를 서비스한 경험을 바탕으로 초고동시성으로 인한 시스템 과부하로 인한 느린 요청 응답 시간 지터 문제를 해결할 수 있는 방법을 개발했습니다. 2017년 광군제 이벤트 기간 동안 전송된 1조 개의 메시지 흐름 중 99.6%의 메시지 쓰기 요청의 레이턴시는 1ms 미만을 기록했고, 99.996%의 메시지 쓰기 요청의 레이턴시는 10ms 미만을 기록했습니다.
메시지가 서버에 도착한 후 즉시 전송되므로 적시에 메시지를 전달할 수 있습니다.
-
높은 가용성, 안정성 및 확장성
ApsaraMQ for RocketMQ는 전 세계 여러 지역에서 고가용성 메시지 클라우드 서비스를 제공합니다. 서버실과 하드웨어 시설은 Alibaba의 IDC에 따라 높은 기준에 따라 구축되었습니다. 각 지역에는 여러 서버실이 배치되어 있습니다. Message Queue는 전체 서버의 서비스가 중단되더라도 애플리케이션에 메시지를 효과적으로 릴리스할 수 있습니다.
ApsaraMQ for RocketMQ는 중국 동부 1(항저우), 중국 동부 2(상하이), 중국 남부 1(선전) 및 기타 지역을 포함한 여러 금융 지역에서 동일 도시 다중 활성 배포 솔루션을 지원하여 핵심 금융 거래 시스템을 보호합니다.
-
보안 액세스 제어
ApsaraMQ for RocketMQ는 기본 계정 및 하위 계정 생성, 블랙리스트 및 화이트리스트 기능, Alibaba Cloud RAM의 STS 기능을 지원합니다.
ApsaraMQ for RocketMQ는 기본 계정과 하위 계정을 통한 교차 계정 승인 및 인증을 지원합니다.
주문된 메시지는 릴리스 순서(선입선출)에 따라 소비됩니다. Message Queue는 글로벌 순서와 세그먼트별 메시지 순서를 지원합니다.
-
토픽 모델(토픽)
ApsaraMQ for RocketMQ는 Pub/Sub 모드를 지원합니다. 이 모드에서는 작성자가 지정된 토픽으로 메시지를 보냅니다. 한 명 또는 여러 명의 소비자가 메시지를 구독할 수 있습니다.
ApsaraMQ for RocketMQ는 클러스터 소비와 브로드캐스트 소비를 지원합니다. 동일한 소비자 ID를 사용하는 구독자는 동일한 클러스터에 속합니다. 클러스터 소비 모드에서 각 메시지는 클러스터의 구독자 중 한 명만 처리하면 됩니다. 브로드캐스트 소비 모드에서는 각 메시지가 클러스터의 모든 가입자에게 푸시되므로 클러스터의 각 가입자가 적어도 한 번은 메시지를 소비하게 됩니다.
-
다양한 유형의 메시지
공통 메시지는 시스템 간 비동기 비즈니스 디커플링, 부하 이동, 로깅, 호스트 간 대규모 캐시 동기화, 실시간 컴퓨팅 및 분석에 사용됩니다.
주문된 메시지는 순서대로 퍼블리싱되고 소비되며, 전체 주문 메시지와 부분 주문 메시지로 나뉩니다.
ApsaraMQ for RocketMQ는 트랜잭션 일관성을 보장하기 위해 X/Open XA라는 분산 트랜잭션 기능을 제공합니다.
메시지가 Message Queue 서버로 전송되면 Message Queue 서버는 메시지 전송 시간(현재 시간) 이후 지정된 시점(예: 2016년 1월 1일 15:00:00)에 메시지를 전송합니다.
메시지가 Message Queue 서버로 전송되면 Message Queue 서버는 메시지 전송 시간(현재 시간) 후 지정된 지연 시점(예: 30분 후)에 메시지를 전송합니다.
-
체계적인 유지 관리 툴
ApsaraMQ for RocketMQ는 시스템 문제를 신속하게 감지하고 처리하는 데 도움이 되는 포괄적인 유지 관리 툴 세트를 제공합니다.
Message Queue 서버에서 토픽, 메시지 ID 또는 메시지 키로 메시지를 쿼리합니다.
ApsaraMQ for RocketMQ는 작성자로부터 Message Queue 서버, 최종 사용자에 이르는 메시지 흐름을 포함한 전체 프로세스에 대한 전체 데이터를 기록하고, 데이터를 집계 및 분석하여 시각적인 풀링크 메시지 트랙을 구성합니다.
ApsaraMQ for RocketMQ는 소비된 메시지를 지정된 시간에 재생할 수 있어 강력한 문제 해결 툴로 작동합니다.
소비 지연 시간 및 메시지 스택 수량을 기준으로 각 고객 ID에 대한 모니터링 및 알림 규칙을 설정하여 적시에 문제를 감지할 수 있습니다.
ApsaraMQ for RocketMQ는 일련의 리소스 관리 및 유지 관리 기능을 구현하고 액세스를 용이하게 할 수 있는 제어 유형의 표준 HTTP RESTful Open API의 완전한 세트를 제공합니다.
고객 시나리오
-
디커플링
-
로드 시프팅(플러드 스토리지)
-
분산 트랜잭션
-
실시간 컴퓨팅
-
대규모 캐시 동기화
-
IM
디커플링
시스템 간의 느슨한 결합은 확장성과 안정성을 개선하는 데 도움이 되며, 최신 애플리케이션에 가장 적합한 설계 솔루션입니다. Message Queue를 사용하면 메시지 손실 없이 애플리케이션 서비스 구성 요소(시스템)의 수에 관계없이 메시지를 전송, 저장, 수신할 수 있습니다. 이를 통해 클라우드 애플리케이션 서비스 구성 요소(시스템)의 실행이 간소화되고 비용 효율성이 높아집니다.
로드 시프팅(플러드 스토리지)
Alibaba의 Tmall 광군제(11/11) 이커머스 페스티벌 기간 중 자정 거래가 가장 많은 시간대, 춘절 갈라 온라인 레드 패킷 머니 증정 및 기타 주요 온라인 이벤트와 같은 대규모 이벤트 중에는 외부 요청량이 시스템의 처리 능력을 초과하면 많은 수의 요청이 실패할 수 있습니다. 시스템에 적절한 보호 조치가 없는 경우 누적된 요청이 너무 많아 시간 초과되어 자동으로 복구할 수 없는 경우 시스템이 다운되고 외부 서비스에 대한 서비스 용량이 0으로 간주됩니다. 이는 결과적으로 사용자 경험에 부정적인 영향을 미칠 수 있습니다.
분산 트랜잭션
기존 트랜잭션 처리 모드에서는 여러 시스템 또는 애플리케이션 구성 요소 간의 비즈니스 프로세스가 대규모 트랜잭션과 결합되어 응답 시간이 길고 비즈니스 링크가 길어져 시스템 가용성에 영향을 미칩니다. Message Queue의 분산 트랜잭션 메시지를 도입하면 동기 처리가 필요한 코어 링크 업무와 비동기 처리가 가능한 브랜치 링크 업무를 분리하여 큰 트랜잭션을 작은 트랜잭션으로 분할하여 시스템 간 상호 작용을 줄일 수 있습니다.
이렇게 하면 분산된 시스템 간의 데이터 일관성을 보장하고 비즈니스 시스템(장바구니, 포인트 등)을 서로 분리하여 최적의 아키텍처 설계를 실현할 수 있습니다.
실시간 컴퓨팅
데이터는 '흐름' 중에 가치를 창출합니다. 기존의 데이터 분석은 대부분 배치 컴퓨팅 모델에 기반하고 있어 실시간 데이터 분석을 실현할 수 없습니다. Alibaba Cloud Message Queue와 메인스트림 컴퓨팅 엔진(예: Spark, Storm, EMR, ARMS, BeamRunner)을 결합하면 실시간 비즈니스 데이터 분석을 편리하게 수행할 수 있습니다.
대규모 캐시 동기화
대규모 활동의 병렬 세션이나 대규모 앱 클라이언트의 경우 요청 응답 시간(RT)을 줄이고 사용자 고객 경험을 개선하기 위해 대규모 캐시 설계를 적용합니다. Tmall의 11/11 프로모션의 경우 Shoutao 앱, Tmall 앱, 각종 전문몰에서 다양한 상품을 고객에게 선보이고, 프로모션 진행에 따라 모든 상품의 가격이 실시간으로 변동합니다. 상품 데이터베이스 페이지에 동시 접속자가 몰리면 응답 시간이 길어지고 중앙 집중식 캐시 대역폭이 병목 현상이 발생하여 상품 가격 조회 수요를 충족하지 못합니다. 전문몰을 위한 멀티 캐시 설계는 Message Queue를 사용하여 여러 캐시 간의 동기화를 실현함으로써 고객이 제품 가격에 액세스할 수 있도록 합니다.
IM
Alibaba에서는 TradeManager(인스턴트 거래 커뮤니케이션 앱)와 DingTalk(업무용 커뮤니케이션 앱) 모두 Message Queue를 메시징 서비스에 사용합니다. 일대일 채팅, 그룹 채팅 및 DingTalk 알림에서 발생하는 각 상호 작용 중에 많은 수의 메시지가 생성됩니다.