• RabbitMq安装配置问题


    引用:https://www.jianshu.com/p/2ecad37d64ff

    1. 权限问题

    Caused by: com.rabbitmq.client.ShutdownSignalException: connection error; protocol method: #method<connection.close>(reply-code=530, reply-text=NOT_ALLOWED - access to vhost '/' refused for user 'guest', class-id=10, method-id=40) at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66) ~[amqp-client-4.0.2.jar:4.0.2] at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:32) ~[amqp-client-4.0.2.jar:4.0.2] at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:366) ~[amqp-client-4.0.2.jar:4.0.2] at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:229) ~[amqp-client-4.0.2.jar:4.0.2] at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:117) ~[amqp-client-4.0.2.jar:4.0.2] ... 13 common frames omitted

    这种问题用户没有权限需要 添加权限
    添加权限有两种

    *在dos命令中设置
    rabbitmqctl set_permissions -p / guest '.* ' ' .* ' '.*'

    显示Setting permissions for user "guest" in vhost "/" 表明设置权限成功
    *在后台控制台输入
    输入前需要添加rabbit的插件
    后台管理开启方法

    rabbitmq-plugins enable rabbitmq_management
    重启rabbitmq服务生效
    打开http://localhost:15672/即可看到管理后台
    用户名密码均为guest
    输入http://127.0.0.1:15672进入后台

    找到你自己的用户
    点击名字

    输入框中内容如图所示即可。
    ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - inequivalent arg 'durable' for queue 'order-delay-queue' in vhost '/': received 'false' but current is 'true', class-id=50, method-id=10)
    表示你order-delay-queue队列,已经创建运行,但是你告诉rabbit的是它没有创建。原因在于‘

    需要将此队列删除并且对应代码为

    代码rabbit官方文档中有

    2.延时队列报错

    ShutdownSignalException: connection error; protocol method: #method<connection.close>(reply-code=503, reply-text=COMMAND_INVALID - unknown exchange type 'x-delayed-message', class-id=40, method-id=10)

    代表没有找到对应x-delayed-message的exchange type
    rabbitmq_delayed_message_exchange插件
    插件下载地址:
    http://www.rabbitmq.com/community-plugins.html
    打开网址后,ctrl + f,搜索rabbitmq_delayed_message_exchange。

    千万记住,一定选好版本号,由于我使用的是RabbitMQ 3.7.4,因此对应的rabbitmq_delayed_message_exchange插件也必须选择3.7.x的。
    如果没有选对版本,在使用延迟消息的时候,会遇到各种各样的奇葩问题,而且网上还找不到解决方案。我因为这个问题,折腾了整整一个晚上。请牢记,要选对插件版本。

    下载完插件后,将其放置到RabbitMQ安装目录下的plugins目录下,并使用如下命令启动这个插件:

    rabbitmq-plugins enable rabbitmq_delayed_message_exchange

    如果启动成功会出现如下信息:

    The following plugins have been enabled: rabbitmq_delayed_message_exchange
    

    启动插件成功后,记得重启一下RabbitMQ,让其生效。

    3. error: unable to connect to node rabbit@: nodedown

    rabbitmq版本过低问题
    当前有些阿里云服务器阿里源对应的rabbit的版本为3.5.X版本,但现在官网延迟插件对应的最低版本为3.6.X
    解决方案:

    手动安装最新版(如果不想手动则使用第二种)
    添加源 echo 'deb http://www.rabbitmq.com/debian/ testing main' | tee /etc/apt/sources.list.d/rabbitmq.list
    然后执行 apt-get update 会安装3.6.15的版本

    4. # epmd reports: node 'rabbit' not running at all?

    remove /var/log/rabbitmq/* and start it back

    【做一朵向日葵,面朝太阳,心纳阳光。心,只要有了充盈的阳光,就不再那么的冰;人,也就不再那么的冷;拥有了热度,心也跟着有了温度。】
  • 相关阅读:
    结对-结对编项目贪吃蛇-最终程序
    团队-团队编程项目中国象棋-模块测试过程
    团队-团队编程项目中国象棋-模块开发过程
    团队-团队编程项目中国象棋-项目进度
    结对-结对编项目贪吃蛇-测试过程
    结对-贪吃蛇-开发过程
    课后作业-阅读任务-阅读提问-2
    20171005-构建之法:现代软件工程-阅读笔记
    结队-结队编程项目贪吃蛇-项目进度
    课后作业-阅读任务-任务阅读-2
  • 原文地址:https://www.cnblogs.com/walkingcamel/p/13525026.html
Copyright © 2020-2023  润新知