RabbitMQ初学之安装与常见问题记录

来源:互联网 发布:淘宝链接转化短链接 编辑:程序博客网 时间:2024/06/06 03:17

安装erl9.0

http://www.erlang.org/downloads otp_win64_20.0.exe

安装rabbitmq server

http://www.rabbitmq.com/install-windows.html rabbitmq-server-3.6.11.exe
安装完后默认自启动

环境变量

ERLANG_HOME,RABBITMQ_HOME,这两个值为软件的安装目录,Path里添加两个bin,成功后命令行输入erl,如果出现Eshell V6.1类似字样,说明成功,如果命令无法识别,重启试试。

Web管理界面

Rabbitmq有一个web管理界面:http://localhost:15672,账号密码都是guest,未配置的客户端默认使用该账号凭据,但仅限于访问本地,如果是网络访问则需要另外配置,添加一个新账号,比如admin,并赋予管理队列的权限。

常用命令

rabbitmq-plugins enable rabbitmq_management 开启插件rabbitmq-service remove 移除服务rabbitmq-service install 安装服务rabbitmq-service start 或者 net start rabbitmq 启动服务rabbitmq-service stop 或者 net stop rabbitmq 停止服务rabbitmqctl status 查看服务状态rabbitmq-server restart 重启服务

错误记录

运行客户端代码时的错误记录

连接被拒绝

C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.3\sbin>rabbitmqctl status Status of node rabbit@TPAJ05421843 ...Error: unable to connect to node rabbit@TPAJ05421843: nodedownDIAGNOSTICSattempted to contact: [rabbit@TPAJ05421843]rabbit@TPAJ05421843:* connected to epmd (port 4369) on TPAJ05421843* epmd reports: node 'rabbit' not running at allother nodes on TPAJ05421843: ['RabbitMQ']* suggestion: start the nodecurrent node details:- node name: 'rabbitmqctl-19884@TPAJ05421843'- home dir: H:\- cookie hash: PD4QQCYrf0TME9vIko3Xuw==

或者java端报错:connection refused

尝试过以下多种方法:
1、重新安装服务
Run RabbitMQ sbin command prompt as administrator.
rabbitmq-service remove
rabbitmq-service install
2、hosts文件中localhost与127.0.0.1映射

127.0.0.1      localhost

3、.erlang.cookie这个文件存在两个地方,user/admin/.erlang.cookie以及windows/.erlang.cookie,这两个文件内容要保持一致相同
4、如果公司网络有端口限制,防火墙只允许部分端口的话,比如说15672这个端口用不了,那么只有去修改rabbitmq config配置文件,默认配置文件在appdata/roaming/rabbitmq文件夹下,如果没有的话,手动创建,如果有的话默认内容为[].;复制rabbitmq.config.example文件中内容,其中有如下内容

%% {tcp_listeners,[5672]},

去掉listeners端口号左边两个百分号以及后边的逗号,这是erlang语法。
修改配置文件后,需要做以下几步方能使配置文件生效(操作需要在管理员权限下进行):
第一,停止stop服务
第二,安装install服务
第三,开启start服务
5、http://www.rabbitmq.com/troubleshooting.html 官方网站的问题记录
6、注意客户端代码中setHost(“”)的值是否指向正确,如果是在本地安装的rabbitmq服务,直接localhost即可
6、最终正确的适应我的解决方案:是改了计算机名,改短一点,http://blog.csdn.net/walle_panpan/article/details/53009222,当时的现状是打开服务对话框,手动启动rabbitmq,启动虽然成功,但过一会再点击查看状态还是停止状态,也就是无法正常启动rabbitmq服务,命令行会报这种错误,Applying plugin configuration to rabbitmq@(计算机名) failed ,重新改过计算机名后要重启电脑,在此之前,最好卸载干净当前的rabbitmq,重启后重新安装。

授权失败

Exception in thread "main" com.rabbitmq.client.AuthenticationFailureExceptionconnection reset

解决方法就是在rabbitmq的web管理端添加新用户,注意不能使用默认的guest用户,并且给这个新用户赋予管理队列的权限;然后在java代码中添加

    factory.setUsername("admin");    factory.setPassword("admin");

版本不对

unsupportedClassVersionError: unsupported major.minor version 52.0

解决方法就是升级jdk版本或者降版本
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html 1.7版本jdk下载地址

参考文章:http://blog.csdn.net/zhousenshan/article/details/66478608

原创粉丝点击