RabbitMQ安装部署<一>
近期由于使用redis的Publish/Subscribe存在TCP/IP握手失败,导致订阅/发布不可靠。从而选择其它方案,找替代的MQ。
但我们的业务场景不适合,原因是跨机房的TCP/IP不可靠,所以不使用MQ。MQ只是调研中。
?
?
1. 环境
windows
下载地址
rabbitMQ
http://www.rabbitmq.com/install-windows.html
rabbitmq-server-2.7.1.exe
Erlang
http://www.erlang.org/download.html
http://www.erlang.org/download/otp_win32_R15B.exe
安装:
http://www.rabbitmq.com/install-windows.html
Click + Click = OK
在sbin/目录下出现了四个命令:
rabbitmqctl.bat ?
rabbitmq-plugins.bat ?
rabbitmq-server.bat?
rabbitmq-service.bat
启动:
方法一
直接cmd->services.msc 启动 RabbitMQ
方法二
./rabbitmq-server.bat start
./rabbitmq-server.bat stop
linux
下载地址
rabbitMQ
http://www.rabbitmq.com/download.html
安装:
a. Installing on RPM-based Linux (CentOS, Fedora, OpenSuse, RedHat)
http://www.rabbitmq.com/install-rpm.html
Install the Server
yum install erlang
Erlang on RHEL 5 (and CentOS 5)
wget -O /etc/yum.repos.d/epel-erlang.repo http://repos.fedorapeople.org/repos/peter/erlang/epel-erlang.repo
yum install erlang
b. Installing on Debian / Ubuntu
http://www.rabbitmq.com/install-debian.html
deb http://www.rabbitmq.com/debian/ testing main
wget http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
sudo apt-key add rabbitmq-signing-key-public.asc
sudo apt-get install rabbitmq-server
启动:
./rabbitmq-server start
./rabbitmq-server stop
查看状态:
./rabbitmqctl status
Client
eg:
http://www.rabbitmq.com/getstarted.html
Java
http://www.rabbitmq.com/releases/rabbitmq-java-client/v2.7.1/rabbitmq-java-client-bin-2.7.1.tar.gz
eg:
http://www.rabbitmq.com/api-guide.html
https://github.com/rabbitmq/rabbitmq-tutorials/tree/master/java
Python
pika
https://github.com/pika/pika
eg:
https://github.com/rabbitmq/rabbitmq-tutorials/tree/master/python
PHP
eg:
https://github.com/videlalvaro/php-amqplib
.NET
http://www.rabbitmq.com/releases/rabbitmq-dotnet-client/v2.7.1/rabbitmq-dotnet-client-2.7.1-dotnet-3.0.zip
2. 配置文件
官方地址:http://www.rabbitmq.com/configure.html
一般情况下,RabbitMQ的默认配置就足够了。如果希望特殊设置的话,有两个途径:
一个是环境变量的配置文件 rabbitmq-env.conf ;
一个是配置信息的配置文件 rabbitmq.config;
注意,这两个文件默认是没有的,如果需要必须自己创建。
rabbitmq-env.conf
这个文件的位置是确定和不能改变的,位于:/etc/rabbitmq目录下(这个目录需要自己创建)。
文件的内容包括了RabbitMQ的一些环境变量,常用的有:
#RABBITMQ_NODE_PORT= ? ?//端口号
#HOSTNAME=
RABBITMQ_NODENAME=mq
RABBITMQ_CONFIG_FILE= ? ? ? ?//配置文件的路径
RABBITMQ_MNESIA_BASE=/rabbitmq/data ? ? ? ?//需要使用的MNESIA数据库的路径
RABBITMQ_LOG_BASE=/rabbitmq/log ? ? ? ?//log的路径
RABBITMQ_PLUGINS_DIR=/rabbitmq/plugins ? ?//插件的路径
具体的列表见:http://www.rabbitmq.com/configure.html#define-environment-variables
rabbitmq.config
这是一个标准的erlang配置文件。它必须符合erlang配置文件的标准。
它既有默认的目录,也可以在rabbitmq-env.conf文件中配置。
文件的内容详见:http://www.rabbitmq.com/configure.html#config-items
3. 监控
官方地址:http://www.rabbitmq.com/management.html
windows
第一步 启动管理插件
rabbitmq-plugins enable rabbitmq_management
具体启动:
?mochiweb
?webmachine
?rabbitmq_mochiweb
?amqp_client
?rabbitmq_management_agent
?rabbitmq_management
查看安装:
?rabbitmq-plugins list
第二步 windows 需要的特定步骤
Windows service users need to take additional steps when changing plugins.
地址:http://www.rabbitmq.com/plugins.html#windows-restart
Restarting RabbitMQ Windows Service
运行下面命令:
rabbitmq-service.bat stop
rabbitmq-service.bat install
rabbitmq-service.bat start
Linux
只需第一步骤即可
启动
Getting started
The web UI is located at: http://server-name:55672/mgmt/
The HTTP API and its documentation are both located at: http://server-name:55672/api/?
(or view our latest HTTP API documentation here).
Download rabbitmqadmin at: http://server-name:55672/cli/
用户/密码:guest/guest