RabbitMQ是目前比较使用比较广泛的一个队列服务器,但是很多朋友在使用过程中,也遇到一些问题,这篇文章主要是做一个总结吧

本篇文章,虽然标题命名为“安装与卸载”,但是网上有很多类似的文章,我就简单说一下,主要目的是记录安装与卸载过程中遇到一些坑

(一)安装

  1.RabbitMQ依赖于Erlang虚拟机,首先我们先去官网下载Erlang和RabbitMQ,也可以直接去网盘下载,提取码:l80p;

  2.鼠标右键 - 以管理员身份运行,分别安装Erlang和RabbitMQ

  3.Win+R,输入CMD,打开dos命令窗口,输入“cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.12\sbin”(根据实际安装路径调整),回车,定位到RabbitMQ安装目录sbin文件夹;

  4.输入“rabbitmqctl status”,查看是否安装成功;

    

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Erlang

  5.输入“rabbitmq-plugins enable rabbitmq_management”,打开RabbitMQ管理插件;

    

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Windows_02

  6.使用服务器上的浏览器,地址“http://127.0.0.1:15672/”,打开管理页面(账号:guest;密码:guest)

  7.创建一个administered账户(guest只允许本机访问)

    

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Windows_03

(二)卸载

  1.打开Windows控制面板,双击“程序和功能”。

  2.在当前安装的程序列表中,右键单击RabbitMQ Server,然后单击“卸载”。

  3.在当前安装的程序列表中,右键单击“Erlang OTP”,然后单击“卸载”。

  4.打开Windows任务管理器。

  5.在任务管理器中,查找进程epmd.exe。 如果此进程仍在运行,请右键单击该进程,然后单击“结束进程”。

  6.删除RabbitMQ和Erlang的所有安装目录。

  7.删除文件C:\ Windows \ .erlang.cookie(如果存在)。

  8.转到用户文件夹:C:\ Users \ [username],然后删除文件.erlang.cookie。删除

  9.同样在User文件夹中,转到AppData \ Roaming \ RabbitMQ。删除RabbitMQ文件夹。  10.打开运行cmd->sc delete RabbitMQ。

  10.打开运行->regedit 找到RabbitMQ节点,删掉即可。

    

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Erlang_04

  参考:

(三)那些年遇到的坑(重点来了)

  1.卸载时,在任务管理器中,找不到epmd.exe的进程,但是删除目录中的文件时,却提示被占用

    解决方案:任务管理器 - 性能 - 打开资源监视器,在资源监视器中找到epmd,右键 - 结束进程,问题解决

      

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Erlang_05

  2.安装好之后,创建了账号,但是使用过程中,依然提示权限不足

    a.原因是创建了管理员账号,却没有分配权限,点击用户,给分配权限就可以了,这里默认的管理员拥有所有权限

      

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Erlang_06

    

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Windows_07

  3.安装RabbitMQ时,查看安装的详细信息,出现异常,导致服务无法启动

    a.一般情况下不会出现该问题,因为安装Erlang的时候,会自动添加注册表,但是某些Windows环境问题(未找到问题点),或者不是用管理员安装(权限不足),导致无法添加注册表,导致安装失败

    解决方案:

      手动添加注册表信息,9.0是指Erlang的版本,根据实际情况可能不同,路径是Erlang的安装目录,根据实际情况配置安装目录

      依次执行命令:rabbitmq-service stoprabbitmq-service removerabbitmq-service installrabbitmq-service start,卸载并重新安装RabbitMQ的服务

    

rabbitmq centos 安装 virstualhost rabbitmq安装不上_右键_08

     

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Windows_09

  4.安装在第4步的时候,出现问题“ unable to connect to node 'rabbit@2012-R2-Datacenter-64bit': nodedown”

    解决方案:看到网上说是C:\Windows\.erlang.cookie和C:\Users\[username]\.erlang.cookie的口令不一致导致的,删除其一,将另外一个复制过来就可以了

  5.正常使用中,发现日志记录增长很快,日志过大,不利于定位问题

    因为rabbitMQ日志默认记录级别是Info,会记录所有进出栈信息,导致日志过大,只需要将配置文件的日志级别设置为error或者warning

    配置文件和日志的目录在安装用户目录下,可以在管理页面的首页查看

 

[
      {rabbit, [
          {vm_memory_high_watermark_paging_ratio, 0.4},
          {vm_memory_high_watermark, 0.4},
          {log_levels, [{connection, warning}, {channel, warning}]}
        ]
      }	 
    ].

rabbitmq centos 安装 virstualhost rabbitmq安装不上_Erlang_10

  6.使用MQ过程中,业务量大的时候,服务器CPU会暴增,原因是可能是因为每次连接都是创建一个连接对象,又没有及时释放导致的,建议创建连接通道时,使用单例模式

  7.安装目录,尽量不要使用中文,可能会因为中文编码导致乱码

  8.安装目录,尽量不要使用带空格的目录,网上有一些说是空格也会有问题,虽然我目前安装的目录有空格也没有出现什么异常

 总结:

  这就是我们公司使用MQ过程中遇到的一些问题,做一个记录,分享出来希望能帮助到遇见类似问题的朋友,如果各位大佬有更好的解决方案欢迎指教更正,多多交流