MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取或者订阅队列中的消息。MQ和JMS类似,但不同的是JMS是SUN JAVA消息中间件服务的一个标准和API定义,而MQ则是遵循了AMQP协议的具体实现和产品。
1.通过**[http://www.erlang.org/downloads](http://www.erlang.org/downloads)**获取对应安装文件进行安装
2.增加环境变量ERLANG_HOME=D:\Program Files\erl9.3(这里的目录是我的安装目录,你要换成自己的目录)
3.修改环境变量Path,在原来的值后面加上“;%ERLANG_HOME%\bin”
安装完Erlang之后,我们就可以安装RabbitMQ了。
1.到**[http://www.rabbitmq.com/install-windows-manual.html](http://www.rabbitmq.com/install-windows-manual.html)**下载安装包进行安装
2.增加环境变量RABBITMQ_HOEM=D:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.5(这里的目录是我的安装目录,你要换成自己的目录)
3.修改环境变量Path,在原来的值后面加上“;%RABBITMQ_HOME%\sbin”
安装好之后,RabbitMQ就作为一个服务按照默认方式进行启动了
我们可以通过Web进行管理RabbitMQ:
1.运行命令rabbitmq-plugins enable rabbitmq_management 开启Web管理插件
2.通过浏览器访问http://localhost:15672,并通过默认用户guest进行登录,密码也是guest,登录后的页面:
这里就说明我们启动成功了!!!!!我们可以在其中添加用户并使用进行操作。
解决方法:可以在RabbitMQ所在的sbin目录下执行set RABBITMQ_BASE=D:\install3\rabbitmq\rabbitmq_server-3.7.8\data 操作可设置为自己的路径便可解决中文问题,之后执行rabbitmq-service.bat install。
在这里推荐大家使用**rabbitmq_server-3.7.5**版本配合**erlang-20.2**版本(亲测可用)
最后通过查看RabbitMQ服务是否启动,一切就绪便可出现可视化消息见面了,祝大家成功!!!!!!
安装依赖文件:
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
1.Erlang安装配置
下载安装包,地址http://www.erlang.org/downloads,我选择的是otp_src_18.3.tar.gz。
然后解压文件:
[root@iZ25e3bt9a6Z rabbitmq]# tar -xzvf otp_src_18.3.tar.gz
[root@iZ25e3bt9a6Z rabbitmq]# cd otp_src_18.3/
配置安装路径编译代码:
[root@iZ25e3bt9a6Z otp_src_18.3]# ./configure --prefix=/opt/erlang
执行编译结果:
[root@iZ25e3bt9a6Z otp_src_18.3]# make && make install
完成后进入/opt/erlang查看执行结果
[root@iZ25e3bt9a6Z rabbitmq]# cd /opt/erlang/
[root@iZ25e3bt9a6Z erlang]# erl
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V7.3 (abort with ^G)
1>
当出现以上信息时表示安装完成。然后输入’halt().’退出即可。
然后在配置Erlang环境变量,vi /etc/profile文件,增加下面的环境变量:
#set erlang environment
export PATH=$PATH:/opt/erlang/bin
source /etc/profile使得文件生效
在安装Erlang过程中,可能会遇到以下问题,一般都是因为系统中缺少相应的包引起的,缺少什么包直接yum安装即可。
2.下载安装RabbitMq
[root@iZ25e3bt9a6Z rabbitmq]# weget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz
解压文件
[root@iZ25e3bt9a6Z rabbitmq]# xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
[root@iZ25e3bt9a6Z rabbitmq]# tar -xvf rabbitmq-server-generic-unix-3.6.1.tar -C /opt
解压后进入文件夹/opt发现多了个文件夹rabbitmq-server-generic-unix-3.6.1 ,重命名为rabbitmq以便记忆。
然后在配置rabbitmq环境变量,vi /etc/profile文件,增加下面的环境变量:
#set rabbitmq environment
export PATH=$PATH:/opt/rabbitmq/sbin
source /etc/profile使得文件生效
3.RabbitMQ服务启动关闭
以上就已经完成了RabbitMq的安装,怎么启动服务呢?
启动服务:
[root@iZ25e3bt9a6Z rabbitmq]# cd sbin/
[root@iZ25e3bt9a6Z sbin]# ./rabbitmq-server -detached
查看服务状态:
[root@iZ25e3bt9a6Z sbin]# ./rabbitmqctl status
Status of node rabbit@iZ25e3bt9a6Z …
[{pid,11849},
{running_applications,
[{rabbitmq_management,“RabbitMQ Management Console”,“3.6.1”},
{rabbitmq_management_agent,“RabbitMQ Management Agent”,“3.6.1”},
{rabbitmq_web_dispatch,“RabbitMQ Web Dispatcher”,“3.6.1”},
{webmachine,“webmachine”,“1.10.3”},
{amqp_client,“RabbitMQ AMQP Client”,“3.6.1”},
{mochiweb,“MochiMedia Web Server”,“2.13.0”},
{syntax_tools,“Syntax tools”,“1.7”},
{ssl,“Erlang/OTP SSL application”,“7.3”},
{public_key,“Public key infrastructure”,“1.1.1”},
{asn1,“The Erlang ASN1 compiler version 4.0.2”,“4.0.2”},
{crypto,“CRYPTO”,“3.6.3”},
{compiler,“ERTS CXC 138 10”,“6.0.3”},
{inets,“INETS CXC 138 49”,“6.2”},
{rabbit,“RabbitMQ”,“3.6.1”},
{mnesia,“MNESIA CXC 138 12”,“4.13.3”},
{rabbit_common,[],“3.6.1”},
{xmerl,“XML parser”,“1.3.10”},
{os_mon,“CPO CXC 138 46”,“2.4”},
{ranch,“Socket acceptor pool for TCP protocols.”,“1.2.1”},
{sasl,“SASL CXC 138 11”,“2.7”},
{stdlib,“ERTS CXC 138 10”,“2.8”},
{kernel,“ERTS CXC 138 10”,“4.2”}]},
{os,{unix,linux}},
{erlang_version,
“Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:8:8] [async-threads:64] [hipe] [kernel-poll:true]\n”},
{memory,
[{total,64111264},
{connection_readers,0},
{connection_writers,0},
{connection_channels,0},
{connection_other,2808},
{queue_procs,2808},
{queue_slave_procs,0},
{plugins,367288},
{other_proc,19041296},
{mnesia,61720},
{mgmt_db,158696},
{msg_index,47120},
{other_ets,1372440},
{binary,128216},
{code,27368230},
{atom,992409},
{other_system,14568233}]},
{alarms,[]},
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
{vm_memory_high_watermark,0.4},
{vm_memory_limit,6556241100},
{disk_free_limit,50000000},
{disk_free,37431123968},
{file_descriptors,
[{total_limit,65435},
{total_used,2},
{sockets_limit,58889},
{sockets_used,0}]},
{processes,[{limit,1048576},{used,204}]},
{run_queue,0},
{uptime,412681},
{kernel,{net_ticktime,60}}]
关闭服务:
[root@iZ25e3bt9a6Z sbin]# ./rabbitmqctl stop
Stopping and halting node rabbit@iZ25e3bt9a6Z …
4. 配置网页插件
首先创建目录,否则可能报错:
mkdir /etc/rabbitmq
然后启用插件:
./rabbitmq-plugins enable rabbitmq_management
配置linux 端口 15672 网页管理 5672 AMQP端口
然后访问http://localhost:15672即可
默认用户guest 密码guest
5. 远程访问配置
默认网页是不允许访问的,需要增加一个用户修改一下权限,代码如下:
添加用户:rabbitmqctl add_user hxb hxb
添加权限:rabbitmqctl set_permissions -p “/” hxb “." ".” “.*”
修改用户角色rabbitmqctl set_user_tags hxb administrator
然后就可以远程访问了,然后可直接配置用户权限等信息。
6. rabbitmq常用命令
add_user
delete_user
change_password
list_users
add_vhost
delete_vhost
list_vhostsset_permissions [-p ]
clear_permissions [-p ]
list_permissions [-p ]
list_user_permissions
list_queues [-p ] [ …]
list_exchanges [-p ] [ …]
list_bindings [-p ]
list_connections [ …]
CentOS 5.6 安装RabbitMQ http://www.linuxidc.com/Linux/2013-02/79508.htm
RabbitMQ客户端C++安装详细记录 http://www.linuxidc.com/Linux/2012-02/53521.htm
用Python尝试RabbitMQ http://www.linuxidc.com/Linux/2011-12/50653.htm
RabbitMQ集群环境生产实例部署 http://www.linuxidc.com/Linux/2012-10/72720.htm
Ubuntu下PHP + RabbitMQ使用 http://www.linuxidc.com/Linux/2010-07/27309.htm
在CentOS上安装RabbitMQ流程 http://www.linuxidc.com/Linux/2011-12/49610.htm
RabbitMQ概念及环境搭建 http://www.linuxidc.com/Linux/2014-12/110449.htm
RabbitMQ入门教程 http://www.linuxidc.com/Linux/2015-02/113983.htm