没有合适的资源?快使用搜索试试~ 我知道了~
rabbitmq的接口函数说明,api参数使用说明
2星 需积分: 41 44 下载量 152 浏览量
2018-05-10
15:05:22
上传
评论 5
收藏 22KB DOCX 举报
温馨提示
试读
11页
rabbitmq的提供的各个接口函数使用说明,函数有 1、amqp_new_connection(声明一个新的connection) 2、amqp_open_socket(获取socket) 3、amqp_set_sockfd(将connection和sockfd进行绑定) 4、amqp_login(用于登录RabbitMQ server,主要目的为了进行权限管理) 5、amqp_channel_open(用于关联conn和channel) 6、amqp_exchange_declare(声明exchange) 7、amqp_queue_declare(声明queue) 8、amqp_queue_bind(声明binding,已经有的绑定直接返回,没有绑定的就会绑定) 9、amqp_basic_qos(控制预取消息数) 10、amqp_basic_consume(指定要接收的队列) 11、amqp_consume_message(接收数据) 12、int amqp_basic_ack(发送ask确认) 13、amqp_basic_reject(拒绝ask) 14、amqp_basic_publish(发布消息) 15、amqp_simple_wait_frame(回调等待服务器的结果返回) 16、amqp_basic_get(客户端主动获取服务器的下一条消息) 17、关闭 18、AE交换机的使用 19、死信交换机的使用
资源推荐
资源详情
资源评论
1、amqp_new_connection(声明一个新的 connection)
声明:amqp_connection_state_t amqp_new_connection(void);
2、amqp_open_socket(获取 socket)
声明:int amqp_open_socket(char const *hostname, int
portnumber);
参数说明:hostname RabbitMQ server 所在主机
portnumber RabbitMQ server 监听端口
3、amqp_set_sockfd(将 connection 和 sockfd 进行绑定)
声明:void amqp_set_sockfd(amqp_connection_state_t state,int
sockfd);
4、amqp_login(用于登录 RabbitMQ server,主要目的为了
进行权限管理)
声明:amqp_rpc_reply_t amqp_login(amqp_connection_state_t
state, char const *vhost,int channel_max,int frame_max,int
heartbeat,amqp_sasl_method_enum sasl_method, ...);
参数说明:state amqp connection
vhost rabbit-mq 的虚机主机,是 rabbit-mq 进行权限管理的最小
单位
channel_max 最大链接数,此处设成 0 即可
frame_max 和客户端通信时所允许的最大的 frame size.默认值为
131072,增大这个值有助于提高吞吐,降低这个值有利于降低时延
heartbeat 客户端发送心跳的时间间隔,如果不设置,RabbitMQ 服务
器是 60 秒会判断与客户端的连接。如果 60 秒后 amqp_consume_message
就不会阻塞会直接返回(这可能造成接受者死循环)
sasl_method 用于 SSL 鉴权
示例:
amqp_login(conn ,"/" ,0 ,1310172 ,0 ,AMQP_SASL_METHOD_PLAIN ,"
admin" ,"admin");
5、amqp_channel_open(用于关联 conn 和 channel)
声明:amqp_channel_open_ok_t
*amqp_channel_open(amqp_connection_state_t state,
amqp_channel_t channel);
接口说明:如果已经打开的 channel 不能再 open,返回错误
6、amqp_exchange_declare(声明 exchange)
声明:amqp_exchange_declare_ok_t
*amqp_exchange_declare(amqp_connection_state_t state,
amqp_channel_t channel, amqp_bytes_t exchange, amqp_bytes_t
type, amqp_boolean_t passive, amqp_boolean_t durable,
amqp_boolean_t auto_delete, amqp_boolean_t internal,
amqp_table_t arguments);
参数说明:state
channel
exchange
type "fanout" "direct" "topic"三选一
passive 为 true 时如果没有队列不会创建而是返回 error,可用于判
断队列是否存在,此时只要有名称参数就行,其他设不设置都没影响查询结果。
为 false 时,不存在队列就创建。但是存
在的队列个参数设置必须与第一次一样,否则
amqp_exchange_declare 返回 error。
durable 持久化
aoto_delete 当所有绑定队列都不再使用时,是否自动删除该交换机
internal (If set, the exchange may not be used directly by
publishers, but only when bound to other exchanges. Internal
exchanges are used to construct wiring that
isnotvisible to applications.)
arguments 用于拓展参数,没有就为 amqp_empty_table
arguments 拓展参数:
1、alternate-exchange 绑定 AE 交换机
7、amqp_queue_declare(声明 queue)
声明:amqp_queue_declare_ok_t
*amqp_queue_declare(amqp_connection_state_t state,
amqp_channel_t channel, amqp_bytes_t queue, amqp_boolean_t
passive, amqp_boolean_t durable, amqp_boolean_t exclusive,
amqp_boolean_t auto_delete, amqp_table_t arguments);
参数说明:state
channel
queue 定义队列名称
passive
剩余10页未读,继续阅读
资源评论
- joenhon2018-07-03对于新手有用,虽然我也是新手,但我是抱着提高发送消息效率来的,结果。。。还是大众资料,不足5积分https://www.cnblogs.com/yorkyang/p/6294049.html
黄黄雪海
- 粉丝: 0
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功