知识卡片

AMQP协议诞生的深层原因

专业/工作 · 589.c

内容

早期商业消息中间件价格高昂且互不兼容,供应商更倾向于解决自身应用的互通问题,而非建立跨产品标准。JMS曾尝试用统一的Java API封装不同MQ厂商的接口,但这是”上层API层面的标准化”,底层协议依旧割裂,应用切换MQ实现依然脆弱。AMQP选择在更底层的协议层面定义标准,使不同语言、不同产品实现的客户端与Broker可以直接互通。发散:标准化的层次选择很关键——封装在API层的标准只能统一”调用方式”,封装在协议层的标准才能统一”通信语义”,后者兼容性更彻底。

参考来源

《RabbitMQ实战指南》第1章《RabbitMQ简介》