本文主要内容是RabbitMQ的安装步骤【Windows系统与linux上的安装】及客户端的简单使用。

1、下载

下载地址:http://www.rabbitmq.com/download.html

2、Windows上安装

2.1 安装安装Erlang

下载erlang:http://www.erlang.org/download/otp_win64_17.3.exe

安装:

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

erlang安装完成。

2.2 安装安装RabbitMQ

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

RabbitMQ安装完成。

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

启动、停止、重新安装等。

2.3启用管理工具

第一步:点击打开RabbitMQ的命令窗口。如图:

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

第二步:输入命令rabbitmq-plugins enable rabbitmq_management

这个命令的意思是安装RabbitMQ的插件。

第三步:测试是否安装成功。

方法:访问地址:http://127.0.0.1:15672/

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

默认账号:guest/guest

3、Linux上安装

3.1安装erlang

添加yum支持

cd /usr/local/src/

mkdir rabbitmq
cd rabbitmq
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
sudo yum install erlang

3.2安装RabbitMQ

上传rabbitmq-server-3.4.1-1.noarch.rpm文件到/usr/local/src/rabbitmq/
安装:
rpm -ivh rabbitmq-server-3.4.1-1.noarch.rpm
 
几个常用命令:
service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart
 
chkconfig rabbitmq-server on  //设置开机自启
 
设置配置文件:
cd /etc/rabbitmq
cp /usr/share/doc/rabbitmq-server-3.4.1/rabbitmq.config.example /etc/rabbitmq/
mv rabbitmq.config.example rabbitmq.config
设置用户远程访问:
vi /etc/rabbitmq/rabbitmq.config
rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用
去掉后面的逗号
开启web界面管理工具
rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart
 
防火墙开放15672端口
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
/etc/rc.d/init.d/iptables save
 

4、Deeping和MacOS上安装

4.1安装erlang

添加yum支持

cd /usr/local/src/

mkdir rabbitmq
Update the package index:
# sudo apt-get update
Install erlang deb package:
# sudo apt-get install erlang

4.2安装RabbitMQ

上传rabbitmq-server-3.4.1-1.noarch.rpm文件到/usr/local/src/rabbitmq/
安装:
Update the package index:
# sudo apt-get update
Install rabbitmq-server deb package:
# sudo apt-get install rabbitmq-serve
 
几个常用命令:
service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart
 
去掉后面的逗号
开启web界面管理工具
rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart
 
防火墙开放15672端口
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
/etc/rc.d/init.d/iptables save

5、客户端的简单介绍

1、界面的介绍

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

注意设置虚拟主机与添加用户这块。

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

关于虚拟主机,Virtual Host,其实是一个虚拟概念,类似于权限控制组,一个Virtual Host里面可以有若干个Exchange和Queue,但是权限控制的最小粒度是Virtual Host

用户角色有下面几种:
  1. 超级管理员(administrator)
可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
  1. 监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
  1. 策略制定者(policymaker)
可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)
  1. 普通管理者(management)
仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
  1. 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
 
 
php连接执行代码
<?php
/*************************************
* PHP amqp(RabbitMQ) Demo - consumer
* Author: Linvo
* Date: 2012/7/30
*************************************/
//配置信息
$conn_args = array(
    'host' => '192.168.1.93',
    'port' => '5672',
    'login' => 'guest',
    'password' => 'guest',
    'vhost'=>'/'
);
$e_name = 'e_linvo'; //交换机名
$q_name = 'q_linvo'; //队列名
$k_route = 'key_1'; //路由key

//创建连接和channel
$conn = new AMQPConnection($conn_args);
if (!$conn->connect()) {
    die("Cannot connect to the broker!\n");
}
$channel = new AMQPChannel($conn);

//创建交换机
$ex = new AMQPExchange($channel);
$ex->setName($e_name);
$ex->setType(AMQP_EX_TYPE_DIRECT); //direct类型
$ex->setFlags(AMQP_DURABLE); //持久化
echo "Exchange Status:".$ex->declare()."\n";

//创建队列
$q = new AMQPQueue($channel);
$q->setName($q_name);
$q->setFlags(AMQP_DURABLE); //持久化
echo "Message Total:".$q->declare()."\n";

//绑定交换机与队列,并指定路由键
echo 'Queue Bind: '.$q->bind($e_name, $k_route)."\n";

//阻塞模式接收消息
echo "Message:\n";
while(True){
    $q->consume('processMessage');
    //$q->consume('processMessage', AMQP_AUTOACK); //自动ACK应答
}
$conn->disconnect();

/**
* 消费回调函数
* 处理消息
*/
function processMessage($envelope, $queue) {
    $msg = $envelope->getBody();
    echo $msg."\n"; //处理消息
    $queue->ack($envelope->getDeliveryTag()); //手动发送ACK应答
}

 

 
转载至 https://www.cnblogs.com/yangh965/p/5862347.html

本文主要内容是RabbitMQ的安装步骤【Windows系统与linux上的安装】及客户端的简单使用。

1、下载

下载地址:http://www.rabbitmq.com/download.html

2、Windows上安装

2.1 安装安装Erlang

下载erlang:http://www.erlang.org/download/otp_win64_17.3.exe

安装:

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

erlang安装完成。

2.2 安装安装RabbitMQ

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

RabbitMQ安装完成。

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

启动、停止、重新安装等。

2.3启用管理工具

第一步:点击打开RabbitMQ的命令窗口。如图:

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

第二步:输入命令rabbitmq-plugins enable rabbitmq_management

这个命令的意思是安装RabbitMQ的插件。

第三步:测试是否安装成功。

方法:访问地址:http://127.0.0.1:15672/

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

默认账号:guest/guest

3、Linux上安装

3.1安装erlang

添加yum支持

cd /usr/local/src/

mkdir rabbitmq
cd rabbitmq
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
sudo yum install erlang

3.2安装RabbitMQ

上传rabbitmq-server-3.4.1-1.noarch.rpm文件到/usr/local/src/rabbitmq/
安装:
rpm -ivh rabbitmq-server-3.4.1-1.noarch.rpm
 
几个常用命令:
service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart
 
chkconfig rabbitmq-server on  //设置开机自启
 
设置配置文件:
cd /etc/rabbitmq
cp /usr/share/doc/rabbitmq-server-3.4.1/rabbitmq.config.example /etc/rabbitmq/
mv rabbitmq.config.example rabbitmq.config
设置用户远程访问:
vi /etc/rabbitmq/rabbitmq.config
rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用
去掉后面的逗号
开启web界面管理工具
rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart
 
防火墙开放15672端口
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
/etc/rc.d/init.d/iptables save
 

4、Deeping和MacOS上安装

4.1安装erlang

添加yum支持

cd /usr/local/src/

mkdir rabbitmq
Update the package index:
# sudo apt-get update
Install erlang deb package:
# sudo apt-get install erlang

4.2安装RabbitMQ

上传rabbitmq-server-3.4.1-1.noarch.rpm文件到/usr/local/src/rabbitmq/
安装:
Update the package index:
# sudo apt-get update
Install rabbitmq-server deb package:
# sudo apt-get install rabbitmq-serve
 
几个常用命令:
service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart
 
去掉后面的逗号
开启web界面管理工具
rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart
 
防火墙开放15672端口
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
/etc/rc.d/init.d/iptables save

5、客户端的简单介绍

1、界面的介绍

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

 

注意设置虚拟主机与添加用户这块。

rabbitMQ 各系统安装
    


            
RabbitMQ的安装与客户端的简单实用

关于虚拟主机,Virtual Host,其实是一个虚拟概念,类似于权限控制组,一个Virtual Host里面可以有若干个Exchange和Queue,但是权限控制的最小粒度是Virtual Host

用户角色有下面几种:
  1. 超级管理员(administrator)
可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
  1. 监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
  1. 策略制定者(policymaker)
可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)
  1. 普通管理者(management)
仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
  1. 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
 
 
php连接执行代码
<?php
/*************************************
* PHP amqp(RabbitMQ) Demo - consumer
* Author: Linvo
* Date: 2012/7/30
*************************************/
//配置信息
$conn_args = array(
    'host' => '192.168.1.93',
    'port' => '5672',
    'login' => 'guest',
    'password' => 'guest',
    'vhost'=>'/'
);
$e_name = 'e_linvo'; //交换机名
$q_name = 'q_linvo'; //队列名
$k_route = 'key_1'; //路由key

//创建连接和channel
$conn = new AMQPConnection($conn_args);
if (!$conn->connect()) {
    die("Cannot connect to the broker!\n");
}
$channel = new AMQPChannel($conn);

//创建交换机
$ex = new AMQPExchange($channel);
$ex->setName($e_name);
$ex->setType(AMQP_EX_TYPE_DIRECT); //direct类型
$ex->setFlags(AMQP_DURABLE); //持久化
echo "Exchange Status:".$ex->declare()."\n";

//创建队列
$q = new AMQPQueue($channel);
$q->setName($q_name);
$q->setFlags(AMQP_DURABLE); //持久化
echo "Message Total:".$q->declare()."\n";

//绑定交换机与队列,并指定路由键
echo 'Queue Bind: '.$q->bind($e_name, $k_route)."\n";

//阻塞模式接收消息
echo "Message:\n";
while(True){
    $q->consume('processMessage');
    //$q->consume('processMessage', AMQP_AUTOACK); //自动ACK应答
}
$conn->disconnect();

/**
* 消费回调函数
* 处理消息
*/
function processMessage($envelope, $queue) {
    $msg = $envelope->getBody();
    echo $msg."\n"; //处理消息
    $queue->ack($envelope->getDeliveryTag()); //手动发送ACK应答
}

 

 
转载至 https://www.cnblogs.com/yangh965/p/5862347.html

相关文章:

  • 2022-12-23
  • 2022-02-12
  • 2022-12-23
  • 2021-07-29
  • 2021-06-22
  • 2021-12-18
  • 2021-05-31
  • 2021-07-07
猜你喜欢
  • 2022-12-23
  • 2021-11-09
  • 2022-02-27
  • 2021-11-04
  • 2022-02-19
  • 2021-10-13
  • 2021-05-20
相关资源
相似解决方案