赞
踩
目录
RabbitMQ-C使用开发详解(Windows环境)
讨论的是windows环境下的使用RabbitMQ-c与RabbitMQ服务端的交互。
RabbitMq的C/C++客户端有很多,我们选用RabbitMq-c。windows环境下的MFC开发,需要把RabbitMq-c客户端编译成dll。
1.下载和安装
下载rabbitmq-c最新代码包:https://github.com/alanxz/rabbitmq-c
下载cmake最新安装包:https://cmake.org/download/
2.使用cmake编译生成适合自己编译环境的工程
第一步:填写源代码路径
第二步:填写建立后的路径,build的文件夹一般建立在源代码路径里,也可以放在其他位置
第三步:点击配置按钮,在配置里面选择属于自己编译环境的名字
第四步:点击生成按钮,不出现运行失败就说明已经编译成功了
特别说明:在编译rabbitmq-c是如果出现如图的错误,可以去掉ENABLE_SSL_SUPPORT括号里的对勾。
在以上生成的工程目录下的librabbitmq\Debug路径下会生成librabbitmq.4.lib、librabbitmq.4.dll两个文件,对应的动态库的导出文件在rabbitmq-c-master\librabbitmq目录下。
生产者与交换机的关系是多对多的有关系,多个生产者可以给同一个交换机生产消息,同时一个生产者也可以能多个交换机生产消息。
交换机与队列的关系是多对多的关系,一个交换机可以给多个队列提供消息,同时多个交换机也可以同时给一个队列提供消息。
队列与消费者的关系是多对多的关系,一个队列可以同时被多个消费者消费,同时一个消费者可以同时消费多个队列的消息。
交换机与交换机的关系,与交换机与队列的关系是一样的。部份交换机充当队列的角色,从其绑定的交换机上分流数据,然后再把自己角色转换成交换机,然后给绑定在自身上的队列分派消息。
所以交换机之间的关系是多对多,一个上级交换机可以绑定多个下级交换机,一个下级交换机可同时绑定多个上级交换机。
总共有4个导出文件:
amqp.h:主要的rabbitmq-c客户端接口都在此文件
amqp_tcp_socket.h:与socket相关的接口
mqp_framing.h:不常用的一些接口
amqp_ssl_socket.h:用户ssl方式加密访问rabbitmq-server
生产者生产消息过程:
&#x
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。