RabbitMQ exchange

1.创建或者声明一个exchange

/**
 * amqp_exchange_declare
 *
 * @param [in] connect连接 amqp_new_connection获取
 * @param [in] channel the channel to do the RPC on,程序自己设置一个通道号,一个连接可以多个通道号。
 * @param [in] exchange 指定exchange名称 eg:amqp_cstring_bytes("exchange_cat")
 * @param [in] type 指定exchange类型,amqp_cstring_bytes("direct")  
 * "fanout" 广播的方式,发送到该exchange的所有队列上。
 * "direct" 通过路由键发送到指定的队列上。
 *  "topic" 通过匹配路由键的方式获取,使用通配符*,#
 * @param [in] passive 检测exchange是否存在,设为true,若队列存在则命令成功返回(调用其他参数不会影响exchange属性),若不存在不会创建exchange,返回错误。设为false,如果exchange不存在则创建exchange,调用成功返回。如果exchange已经存在,并且匹配现在exchange的话则成功返回,如果不匹配则exchange声明失败。
 * @param [in] durable 队列是否持久化
 * @param [in] auto_delete 连接断开的时候,exchange是否自动删除
 * @param [in] internal internal
 * @param [in] arguments arguments
 * @returns amqp_exchange_declare_ok_t
 */
AMQP_PUBLIC_FUNCTION
amqp_exchange_declare_ok_t *
AMQP_CALL 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);

调用函数之后,使用amqp_get_rpc_reply(conn)来获取调用结果。

amqp_exchange_declare(conn, 1, amqp_cstring_bytes("exchange_cat"), amqp_cstring_bytes("direct"), 0, 1, 0,0, amqp_empty_table);

die_on_amqp_error(amqp_get_rpc_reply(conn), "Declaring exchange");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值