最近公司项目需要用到rabbitMQ消息队列,而服务器是windows server,我整理了一下安装运行过程,权当备忘(因为是事后整理,可能有遗忘疏漏,仅供参考流程)
网上介绍的rabbitMQ大多安装运行在Linux系统上,我就不多介绍了,今天我来介绍下windows下rabbitMQ的安装运行.
1.首先下载安装erlang
官网地址 http://www.erlang.org/ 自己找到windows版本的下载链接,下载并安装
2.下载安装rabbitMQ
官网地址 http://www.rabbitmq.com/ 找到windows版本的下载链接,下载后解压即可
3.设置ERLANG_HOME
计算机->属性->高级系统设置->环境变量->系统变量 新建一个变量ERLANG_HOME值为erlang的安装目录如C:\Program Files\erl9.0,然后再在系统变量PATH中加入%ERLANG_HOME%\bin;
4.启动rabbitMQ
进入rabbitMQ安装目录sbin文件夹,找到rabbitmq-server.bat 双击运行
5.配置rabbitMQ
用CMD进入rabbitMQ安装目录sbin文件夹
输入命令 rabbitmq-plugins.bat enable rabbitmq_management 启用web管理
输入命令 rabbitmqctl.bat add_user cjy 123 //加入用户cjy 密码是123
输入命令 rabbitmqctl.bat set_user_tags cjy administrator
输入命令 rabbitmqctl.bat set_permissions -p / cjy ".*" ".*" ".*"
6.经过上面的步骤,rabbitmq就已经可以使用了,打开浏览器,如果本机访问 http://localhost:15672 ,如果是远程访问,把localhost换成服务器IP即可,登录的用户名密码为cjy 123(之前自己添加的)
7.结合spring进行消息收发
我是写成了spring+springMVC+mybatis的web应用,部署到Tomcat上
xml配置文件中关于rabbitmq的配置
spring mvc controller方法,下图红色圈出的语句为发送消息的语句
amqpTemplate为spring依赖注入
另外介绍下一个大坑,本人调试时花了一个下午时间才找到报错原因,发送的消息模型(我这里是Message),必须实现serializable接口,否则无法发送消息(巨坑啊)
8.收消息
我是把收消息部分写成另外一个web应用,单独部署的
这里用到了spring的消息驱动的模型,简单说就是不用你去轮询了,消息到达rabbitmq后,spring会自动调用方法来处理消息,这里需要配置一个监听器,下图红色框框部分
消息处理方法很简单
第一次写博客,大神轻拍 ^^