安装
Erlang Source
URL
http://www.erlang.org/download/otp_src_17.0.tar.gz
安装依赖包
yum install unixODBC
yum install unixODBC-devel
※如果上面的包还不够,请根据configure的输出提示再安装其他包
Erlang安装
./configure
make
make install
RabbitMQ-Server Source
下载URL
http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.0/rabbitmq-server-3.3.0.tar.gz
RabbitMQ-Server安装
make
TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/rabbitmq/sbin MAN_DIR=/usr/local/rabbitmq/man DOC_INSTALL_DIR=/usr/local/rabbitmq/doc make install
MQ启动:
/usr/local/rabbitmq/sbin/rabbitmq-server -detached
※ -detached是后台启动
设定
RabbitMQ两个设定文件
/etc/rabbitmq/rabbitmq-env.conf
/etc/rabbitmq/rabbitmq.config
一般情况是不需要设定的,如果需要设定,得手动创建上面的两个文件
※设定选项参考下面两个URL
http://www.rabbitmq.com/configure.html#define-environment-variables
http://www.rabbitmq.com/configure.html#config-items
检证
Python AMQPlib安装
Python想使用RabbitMQ,需要安装Python的AMQ库。
下载URL
https://pypi.python.org/packages/source/a/amqplib/amqplib-1.0.2.tgz
上面的下载链接不行的话,试试下面这个。
http://py-amqplib.googlecode.com/files/amqplib-1.0.2.tgz
Python AMQPlib 安装
python setup.py build
python setup.py install
送信程序:
需要预先创建好用户,虚拟主机和设定好权限
受信程序:
管理:
使用rabbitmqctl命令
WEBUI管理:
Web管理插件的有效化
①创建/etc/rabbitmq
没有/etc/rabbitmq的话,先创建
mkdir /etc/rabbitmq
②rabbitmq_management有效化。
./rabbitmq-plugins enable rabbitmq_management
③重启rabbitmq-server
./rabbitmqctl stop
./rabbitmq-server -detached
Web管理
①管理URL
http://server-name:15672
※rabbitmq3.0之前的版本是55672端口
②登录
RabbitMQ初始时只有guest用户,并且该用户只能本地登录(localhost)
URL:http://localhost:15672
Username:guest
Password:guest
Erlang Source
URL
http://www.erlang.org/download/otp_src_17.0.tar.gz
安装依赖包
yum install unixODBC
yum install unixODBC-devel
※如果上面的包还不够,请根据configure的输出提示再安装其他包
Erlang安装
./configure
make
make install
RabbitMQ-Server Source
下载URL
http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.0/rabbitmq-server-3.3.0.tar.gz
RabbitMQ-Server安装
make
TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/rabbitmq/sbin MAN_DIR=/usr/local/rabbitmq/man DOC_INSTALL_DIR=/usr/local/rabbitmq/doc make install
MQ启动:
/usr/local/rabbitmq/sbin/rabbitmq-server -detached
※ -detached是后台启动
设定
RabbitMQ两个设定文件
/etc/rabbitmq/rabbitmq-env.conf
/etc/rabbitmq/rabbitmq.config
一般情况是不需要设定的,如果需要设定,得手动创建上面的两个文件
※设定选项参考下面两个URL
http://www.rabbitmq.com/configure.html#define-environment-variables
http://www.rabbitmq.com/configure.html#config-items
检证
Python AMQPlib安装
Python想使用RabbitMQ,需要安装Python的AMQ库。
下载URL
https://pypi.python.org/packages/source/a/amqplib/amqplib-1.0.2.tgz
上面的下载链接不行的话,试试下面这个。
http://py-amqplib.googlecode.com/files/amqplib-1.0.2.tgz
Python AMQPlib 安装
python setup.py build
python setup.py install
送信程序:
需要预先创建好用户,虚拟主机和设定好权限
from amqplib import client_0_8 as amqp
# 创建连接
conn = amqp.Connection(host="192.168.0.2:5672", userid="testuser", password="testpass", virtual_host="/testvhost", insist=False)
# 创建channel
chan = conn.channel()
# 声明一个队列
chan.queue_declare(queue="testqueue", durable=False, exclusive=False, auto_delete=True)
# 声明一个exchange
chan.exchange_declare(exchange="testexchange", type="direct", durable=False, auto_delete=True,)
# 把队列和exchange用路由关键字(routingkey)绑定
chan.queue_bind(queue="testqueue", exchange="testexchange", routing_key="testkey")
# 创建一个消息
msg = amqp.Message("This is a test message!")
msg.properties["delivery_mode"] = 2
# 发送消息到exchange
chan.basic_publish(msg,exchange="testexchange",routing_key="testkey")
# 断开channel 和连接
chan.close()
conn.close()
受信程序:
from amqplib import client_0_8 as amqp
import sys
# 创建连接
conn = amqp.Connection(host="192.168.0.2:5672", userid="testuser", password="testpass", virtual_host="/testvhost", insist=False)
# 创建一个channel
chan = conn.channel()
# 下面的实现是等待消息的到来,轮询
# wait for the message
#def recv_callback(msg):
# print 'Received: ' + msg.body + ' from channel #' + str(msg.channel.channel_id)
# chan.basic_consume(queue='testqueue', no_ack=True, callback=recv_callback, consumer_tag="testtag")
# while True:
# chan.wait()
# chan.basic_cancel("testtag")
# 从指定队列中取消息(没有消息是会抛出异常),并输出
msg = chan.basic_get("testqueue")
print msg.body
# 删除掉队列和exchange
chan.queue_delete(queue="testqueue");
chan.exchange_delete(exchange="testexchange");
# 关闭连接和channel
chan.close()
conn.close()
管理:
使用rabbitmqctl命令
WEBUI管理:
Web管理插件的有效化
①创建/etc/rabbitmq
没有/etc/rabbitmq的话,先创建
mkdir /etc/rabbitmq
②rabbitmq_management有效化。
./rabbitmq-plugins enable rabbitmq_management
③重启rabbitmq-server
./rabbitmqctl stop
./rabbitmq-server -detached
Web管理
①管理URL
http://server-name:15672
※rabbitmq3.0之前的版本是55672端口
②登录
RabbitMQ初始时只有guest用户,并且该用户只能本地登录(localhost)
URL:http://localhost:15672
Username:guest
Password:guest