zoukankan      html  css  js  c++  java
  • rabbitmq 学习错误总结

    1,bind时候出错
            // 定义一个queue,durable(即rabbitmq重启后也不会消失)
            DeclareOk queueDeclare = channel.queueDeclare("test.queue", true)
            channel.exchangeDeclare( "test.exchange", "direct");
            channel.queueBind("test.queue", "test.exchange", "test.routingkey");
            //上面如果定义一个 durability 的queue,就会出现异常
    java.io.IOException
        at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:121)
        at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:139)
        at com.rabbitmq.client.impl.ChannelN.queueBind(ChannelN.java:502)
        at com.rabbitmq.client.impl.ChannelN.queueBind(ChannelN.java:512)
        at com.rabbitmq.client.impl.ChannelN.queueBind(ChannelN.java:70)
        at TestSender.sendMsg(TestSender.java:67)
        at TestSender.main(TestSender.java:85)
    Caused by: com.rabbitmq.client.ShutdownSignalException: connection error; reason: {#method<connection.close>(reply-code=530,reply-text=NOT_ALLOWED - durability settings of queue 'test.queue' in vhost '/' incompatible with exchange 'test.exchange' in vhost '/',class-id=50,method-id=20),null,""}
        at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:81)
        at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:47)
        at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:336)
        at com.rabbitmq.client.impl.AMQChannel.rpc(AMQChannel.java:209)
        at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:133)
        ... 5 more
    根据提示,找到了原因,如果定义一durable的queue,那么bind此queue的exchange也必须是durable的,解决办法
    1,channel.queueDeclare(queue, true);  channel.exchangeDeclare(exchange, "direct", true);
    2,channel.queueDeclare(queue);  channel.exchangeDeclare(exchange, "direct");
  • 相关阅读:
    python中int类型、bool类型补充,及字符串的部分常用方法
    while循环、流程控制、基本运算符、编码问题、in和not in
    python的起源、解释器、变量用户交互、流程控制
    Spring-Security (学习记录三)--读取数据库中的用户和角色
    Spring-Security (学习记录二)--修改为自己的登录页面
    java中get请求的中文乱码问题
    python打开文件的方式
    js闭包
    Java内部类的整理。
    HTML+CSS标签的属性及应用
  • 原文地址:https://www.cnblogs.com/amityat/p/2160052.html
Copyright © 2011-2022 走看看