rabbitmq-c 源码初解(一)

本文介绍了在STM32上实现RabbitMQ客户端的需求背景,探讨了AMQP协议和RabbitMQ的关系,以及AMQP模型中的交换器、消息队列和绑定概念。此外,详细阐述了AMQP生产者消息流转过程,包括连接建立、信道开启、消息发送和资源关闭等步骤。后续将通过Wireshark抓包和源码分析进行深入研究。
摘要由CSDN通过智能技术生成

由于项目需要,不得不在stm32板子上实现RabbitMQ客户端以连接云服务器。查看网上资料,鲜有移植AMQP到stm32上的,rabbitmq -c客户端也只有支持windows和Linux系统的源码。所以只能照着源码自己折腾一个简单的客户端。

本章主要梳理一下一些需要了解的概念。

一、AMQP与RabbitMQ

AMQP,即 Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议, 是应用层协议的一个开放标准, 为面向消息的中间件设计。

AMQP 本身是作为应用层的协议,就像常用的HTTP协议一样,其填充于TCP 协议层的数据部分,主要是通过协议命令来进行交互(如connection.start、connncetion.start-ok、channnel.open、channnel.open-ok等 ),所以它是一个二进制协议。

而RabbitMQ是遵从AMQP协议的,换句话说,RabbitMQ就是AMQP协议的Erlang的实现,(当然RabbitMQ还能支持MQTT、HTTP等多个协议)。

二、高级消息队列模型(AMQ模型)

AMQ 模型定义了一系列模块化组件和标准规则来进行协作。有三种类型的组件可以连接服务器处理链来创建预期的功能:

1. &

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值