前言web
项目中某些场景考虑到高并发状况,调研后决定使用RabbitMQ,原本觉得很简单,没想到配置环境花费了好多时间,按照网上的方法来,老是有其余问题须要继续查找,特记录此笔记,方便下次部署安装。浏览器
本笔记只记录安装过程,不探讨RabbitMQ技术。cookie
准备并发
使用RabbitMQ,除了要安装RabbitMQ外,还必须安装Erlang,因为RabbitMQ使用Erlang语言编写,因此必须先安装Erlang语言运行环境。
1.Erlang下载:http://www.erlang.org/downloads
2.RabbitMQ下载:http://www.rabbitmq.com/
另外先提一下,Erlang和RabbitMQ安装好须要添加到系统的环境变量中,由于这个花费了我一些时间。高并发
Erlang安装工具
1.安装
下载完Erlang以后,打开安装包后,一步步安装完成,这里没什么须要注意的地方。spa
2.设置环境变量
找到Erlang的安装路径打开到bin文件夹下,注意此路径。‘
右键个人电脑,选择属性,找到高级系统设置,点开后选择高级里的环境变量。插件
找到系统变量中的Path,点击编辑3d
新建环境变量,添加路径,能够直接复制打开的Erlang的bin路径。code
3.检查Erlang是否安装成功
打开cmd,输入 erl 后回车,若是能显示版本信息,代表安装成功。
RabbitMQ安装
1.解压下载好的RabbitMQ
2.配置环境变量
找到RabbitMQ的安装路径打开到sbin文件夹下,注意此路径。
同Erlang的环境变量添加,新建路径,添加到系统变量的Path中
3.CMD中安装、启动服务
使RabbitMQ以Windows Service的方式在后台运行,打开CMD,定位到RabbitMQ的sbin目录下。(快捷方法:在sbin目录里按住shift+右键,选择在此处打开命令窗口)
执行:
rabbitmq-service install rabbitmq-service enable rabbitmq-service start
注意,CMD须要管理员权限,不然会报错Unable to register service with service manager. Error: Access is denied.
执行完成后,显示以下信息,表示RabbitMQ的服务端已经启动起来了。
而后,能够用rabbitmqctl这个脚本查看和控制RabbitMQ服务端的状态。
查看状态:
rabbitmqctl status
此时查看通常会出现以下错误:
解决方法以下:
将C:\Users\XXXX\.erlang.cookie 文件拷贝到C:\Windows\System32\config\systemprofile替换掉.erlang.cookie文件。(XXXX为window帐户)
重启rabbitMQ服务:CMD中 先输入 net stop RabbitMQ ,而后输入 net start RabbitMQ
net stop RabbitMQ
net start RabbitMQ
此后,再次输入
rabbitmqctl status
显示以下信息,RabbitMQ至此已经正确安装完毕。
用户设置与web管理工具插件安装
1.新建用户
使用命令查看用户:
rabbitmqctl list_users
RabbitMQ会为咱们建立默认的用户名guest和密码guest,guest默认拥有RabbitMQ的全部权限。
若是咱们须要本身建立用户,那么须要执行相似于下面的命令,设置密码,并授予权限,并将其设置为管理员。
1 rabbitmqctl add_user ading 123456 //建立用户ading密码为123456 2 rabbitmqctl set_permissions ading ".*" ".*" ".*" //赋予ading读写全部消息队列的权限 3 rabbitmqctl set_user_tags ading administrator //分配用户组
另,修改用户密码和删除用户方法以下:
1 rabbitmqctl change_password ading 123 2 rabbitmqctl delete_user ading
2.安装web管理工具插件
CMD中输入:
rabbitmq-plugins enable rabbitmq_management
web管理工具的地址是:http://localhost:15672,初始用户名:guest 初始密码:guest
打开浏览器,输入地址:http://127.0.0.1:15672/#/
总结
不懂的技术,若是配置部署麻烦,也请不要烦躁,由于他人都得经历这些。你得知道,那么多人推荐那么多使用,老是有缘由的,别由于一点麻烦就放弃一项好的技术。