序
本文主要研究一下OpenMessagingapi
架構圖
- namespace,相似cgroup的namespace,用來進行安全隔離,每一個namespace有本身的producer、consumer、topic、queue等
- producer,消息生產者有兩類,一類是Producer,一類是BatchMessageSender,前者提供多種發送方法發送消息到隊列,後者主要是關注速度,批量發送一次提交
- consumer,消息消費者有三類,一個是PullConsumer,一類是PushConsumer,還有一類是StreamingConsumer。PullConsumer從只能從固定一個隊列拉取消息,PushConsumer能夠從多個隊列接收消息,經過MessageListener來接收,StreamingConsumer主要是用於流式處理
- queue,用於接收來自producer或者routing的消息
- routing,負責處理原生消息而後路由到其餘隊列
小結
OpenMessaging是阿里牽頭髮起的分佈式消息模型標準,其api規範首先在rocketmq中落地實現。經過這個標準能夠簡化各類消息中間件的高複雜性和不兼容性,提高消息中間件服務的易用性。安全
doc