博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
window下rabbitmq的配置问题
阅读量:7085 次
发布时间:2019-06-28

本文共 1502 字,大约阅读时间需要 5 分钟。

最近项目想用个MQ来做业务分离,看了市面上众多产品,最后选了rabbitmq,理由很简单,对window的支持很到位(其实是公司的系列产品都是.net的)。

安装方法什么的就不说了,直接到官网下载双击安装就可以。

如果全部都使用默认配置,你将不会遇到任何阻碍。

安装之后设置一下帐号信息,抄了网上的一个方子:

 

[csharp]   
 
 
  1. REM 开启网页版管理平台  
  2. rabbitmq-plugins.bat enable rabbitmq_management  
  3.   
  4. REM 添加一个帐号 密码  
  5. rabbitmqctl.bat add_user lijinan lijinan  
  6.   
  7. REM 添加角色  
  8. rabbitmqctl.bat set_user_tags lijinan administrator  
  9.   
  10. REM 添加权限  
  11. rabbitmqctl.bat set_permissions -p /  lijinan ".*" ".*" ".*"  

 

设置好之后,你可以到  http://localhost:15672 看到爽歪歪的管理界面,按官网给出的C#解决方法,嗯,一切顺利,发送,接收都是如此的完美

在本地试过没问题之后,于是就安装到了公司内部服务器

因为公司网络有端口限制,防火墙只开了有限的端口,默认的5672和15672是用不了的,正常流程是找IT开端口,但为是省事,想直接通过修改rabbitmq的配置文件,把默认端口改为公司允许的端口,比如我是要改到8008。

于是就开始了修改配置,这里面遇多了一些坑,总结一下:

1. rabbitmq.config默认是没有生成的,只有一个rabbitmq.config.example,需要自己建一个,其实就是把.example拿掉就是了

2. rabbitmq.config目录并非安装目录下面的etc,默认是在 C:\Users\%USERNAME%\AppData\Roaming\RabbitMQ 下,这一点在安装目录下面的etc目录下的readme.txt中有说明。

3. rabbitmq.config的数据格式类似json,但并非json。其中端口号是以下这行

    %% {tcp_listeners, [5672]},

     很多人以为只需把  %% 拿掉保存就OK了。但其实后面还有一个小逗号,需要注意,如果当前大节点下面就这一个节点,这个逗号是必须拿掉的。

     如果这是json格式,后面的小逗号是无关紧要的。但可惜,这是erlang。

4. 其次,修改了配置文件后,不能只是重启服务。而需要到安装目录下面的sbin

  执行  rabbitmq-service.bat stop  停止服务

   执行 rabbitmq-service.bat  install  重新安装服务,这时才会重新加载config文件

  执行  rabbitmq-service.bat start  开启服务

5. 所有的命令行操作,都必须在管理员的权限下进行

6. 如果config有问题,服务是启动不起来的,而且错误信息也是很难发现的。

7. 所有config的修改,都必须修改好后,执行第4步

8. 如果是通过环境变量设置config所在目录,一定要注意,环境变量 RABBITMQ_CONFIG_FILE, 这个变量并非是config所在目录,也不是config的全路径。

   如你想设置config为 D:\RabbitMQ\rabbitmq.config,则 RABBITMQ_CONFIG_FILE=D:\RabbitMQ\rabbitmq ,因为rabbitmq会自动在变量值后面加上.config后缀

转载地址:http://kdgml.baihongyu.com/

你可能感兴趣的文章
Lambda Calculus
查看>>
[经典面试题][百度]c++实现STL中的string类
查看>>
一位资深程序员给JAVA初学者的学习路线
查看>>
VUE 使用规范
查看>>
【生物识别】阿里巴巴在移动端核身技术实践
查看>>
Flutter:ListView-ScrollPhysics 详细介绍(翻译)
查看>>
解决 SpringBoot 没有主清单属
查看>>
SAX解析Excel
查看>>
[译] 在 Android P 中使用默认的 TLS 来保护你的用户
查看>>
学习日记 - Object.defineProperty
查看>>
Spring注解专题系类(二)
查看>>
python3、ipython3、setup-tools、pip等环境搭建详细总结
查看>>
react更新state的时候要返回一个全新的引用或者值
查看>>
MobIM-API说明
查看>>
如何在常见业务场景中使用React Hook
查看>>
数据结构系列3 线性表顺序映像的Java实现
查看>>
vue中v-model
查看>>
flex实战
查看>>
python file 文件操作笔记
查看>>
对于MySQL你必须要了解的锁知识
查看>>