centos 安装和配置 rabbitmq
centos 安装 rabbitmq
1、rabbitmq是erlang语言开发的,安装前首先需要安装erlang
# yum install erlang -y // 直接安装可能报错,
# yum install ncurses-devel // 安装依赖
官方下载erlang包
# wget http://erlang.org/download/otp_src_19.0.tar.gz
解压安装erlang
# tar xzvf otp_src_19.0.tar.gz
# cd otp_src_19.0
# ./configure
# make && make install
安装完毕后测试运行一下:
#erl
1>1+2.
3
2>halt(). // 退出
2、安装rabbitmq,yum安装
# rpm -Uvh http://mirrors.sohu.com/fedora-epel/5/x86_64/epel-release-5-4.noarch.rpm
# rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
# yum install rabbitmq-server -y
官方下载: wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5.zip
解压安装
# tar xzvf rabbitmq-server-3.6.5.zip
# cd rabbitmq-server-3.6.5
# make
# make TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/rabbitmq/sbin MAN_DIR=/usr/rabbitmq/man DOC_INSTALL_DIR=/usr/local/rabbitmq/doc install
3、安装完成后需要配置:
/usr/local/rabbitmq/sbin目录下文件说明:
rabbitmq-env // 环境配置
rabbitmq-defaults // 默认参数设置
rabbitmqctl // 管理工具
rabbitmq-plugins // 插件管理工具
rabbitmq-server // rabbitmq服务
3.1、添加自定义配置文件
RABBITMQ_NODE_IP_ADDRESS=192.168.2.2 // 自定义地址
RABBITMQ_NODE_PORT=3333 // 自定义端口号
3.2、启动:
# rabbitmq-server -detached
报错:ERROR: epmd error for host "bogon": timeout (timed out)
修改/etc/hosts
127.0.0.1 bogon
重启即可。
3.3、启用rabbitmq web管理插件,安装sbin目录下:
./rabbitmq-plugins enable rabbitmq_management
然后重启rabbitmq-server
登录web管理页面
http://192.168.2.2:15672
登录用户:guest/guest
3.4、列出所有插件
# ./rabbitmq-plugins list
3.5、安装php的rabbitmq扩展:
# yum install librabbitmq-devel.x86_64 -y
# wget http://pecl.php.net/get/amqp-1.7.1.tgz
# tar zxvf amqp-1.7.1.tgz
# cd amqp-1.7.1
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-amqp
# make
# make install
# vim /usr/local/php/etc/php.ini
extension=amqp.so
重启php-fpm
# /usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf
php操作demo
1. 创建队列
<?php
//连接RabbitMQ
$conn_args = array( 'host'=>'192.168.2.2' , 'port'=> '3333', 'login'=>'guest' , 'password'=> 'guest','vhost' =>'/');
$conn = new \AMQPConnection($conn_args);
$conn->setTimeout(1);
$conn->connect();
//创建exchange名称和类型
$channel = new \AMQPChannel($conn);
$ex = new \AMQPExchange($channel);
$ex->setName('ttlsa_exchange');
$ex->setType(AMQP_EX_TYPE_DIRECT);
$ex->setFlags(AMQP_DURABLE | AMQP_AUTODELETE);
$ex->declare();
//创建queue名称,使用exchange,绑定routingkey
$q = new \AMQPQueue($channel);
$q->setName('ttlsa_queue');
$q->setFlags(AMQP_DURABLE | AMQP_AUTODELETE);
$q->declare();
$q->bind('ttlsa_exchange', 'ttlsa_routingkey');
//消息发布
$channel->startTransaction();
$message = json_encode(array('Hello World!','DIRECT'));
$ex->publish($message, 'ttlsa_routingkey');
$channel->commitTransaction();
$conn->disconnect();
?>
2. 获取队列信息:
<?php
//连接RabbitMQ
$conn_args = array( 'host'=>'192.168.2.2' , 'port'=> '3333', 'login'=>'guest' , 'password'=> 'guest','vhost' =>'/');
$conn = new \AMQPConnection($conn_args);
$conn->connect();
//设置queue名称,使用exchange,绑定routingkey
$channel = new \AMQPChannel($conn);
$q = new \AMQPQueue($channel);
$q->setName('ttlsa_queue');
$q->setFlags(AMQP_DURABLE | AMQP_AUTODELETE);
$q->declare();
$q->bind('ttlsa_exchange', 'ttlsa_routingkey');
//消息获取
$messages = $q->get(AMQP_AUTOACK) ;
if ($messages){
var_dump(json_decode($messages->getBody(), true ));
}
$conn->disconnect();
?>
centos 安装和配置 rabbitmq的更多相关文章
- CentOS安装、配置RabbitMQ
安装步骤(rpm包安装): rpm安装官网:http://www.rabbitmq.com/install-rpm.html 下载rpm并安装: CentOs: wget http://www.rab ...
- 如何安装和配置RabbitMQ
今天开始一个小小的练习,学习一下安装和配置RabbitMQ,为什么要学它,因为WCF可以完全兼容和使用RabbitMQ了.我们新的大数据系统需要使用消息队列,所以就开始研究一下,把它重新封装一下,更便 ...
- 如何安装和配置RabbitMQ(转载)
如何安装和配置RabbitMQ 今天开始一个小小的练习,学习一下安装和配置RabbitMQ,为什么要学它,因为WCF可以完全兼容和使用RabbitMQ了.我们新的大数据系统需要使用消息队列,所以就开始 ...
- CentOS安装与配置LNMP
本文PDF文档下载:http://www.coderblog.cn/doc/Install_and_config_LNMP_under_CentOS.pdf 本文EPUB文档下载:http://www ...
- (转)RedHat/CentOS安装和配置kerberos
RedHat/CentOS安装和配置kerberos 需要在kerberos server和客户端都先安装ntp (Internet时间协议,保证服务器和客户机时间同步 ) 1 kerberos 服 ...
- CentOS 安装最新的 RabbitMQ 3.7.8
RabbitMQ依赖Erlang,Erlang又依赖很多包,安装非常麻烦,可以如下操作: RabbitMQ在github上有提供新的erlang包(https://github.com/rabbitm ...
- 烂泥:CentOS安装及配置TFTP服务器
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 为什么要学习有关TFTP服务器的安装及配置呢?主要是为了后续学习有关linux系统的无人值守安装做准备. TFTP简单文件传输协议,使用UDP的69端口 ...
- centos安装及配置
centos安装 从网上下载最新的版本,用ultraiso做好系统盘,启动.安装过程没有什么可以说的,与其他发行版有点不同的是需要将安装包放到u盘根目录下(u盘容量最好大点,8~16G最好).开始没注 ...
- Linux、Ubuntu、CentOS安装和配置zsh
目录 01 zsh的安装 02 配置zsh 2.1 安装oh-my-zsh 2.2 查看oh-my-zsh目录 2.3 oh-my-zsh 插件的管理 2.3.1 添加插件 2.3.2 zsh-aut ...
随机推荐
- MVC结构
MVC结构是其它三个经典的设计模式的演变:观察者模式(Observer)(Pub/Sub), 策略模式(Strategy)和组合模式(Composite). 来自为知笔记(Wiz)
- Hibernate一对一双向关联(注解)
每一个人(Person)对应一个身份证号(IdCard) package cqvie.yjq.domain; import java.util.Date; import javax.persisten ...
- TDDL DataSource
TDDL DataSource 分为 AtomDataSource GroupDatasource 他们两者没有依赖关系, 都实现了 JDBC 规范, 可以作为独立的 datasource 单独使用 ...
- asp.net mvc 自定义身份验证 2
控制成员角色 [Authorize(Rroles="Administator,SuperAdmin")] public class StoreManagerController:C ...
- 【摘】BPMN2.0-概要
BPMN2.0-概要 原文地址:http://www.uml.org.cn/workclass/201206272.asp 作者:AliKevin2011,发布于2012-6-27 一.BPM ...
- java 删除所有HTML工具类
import java.util.regex.Matcher;import java.util.regex.Pattern; public class HtmlUtil { private stati ...
- Android 遮罩层效果
(用别人的代码进行分析) 不知道在开发中有没有经常使用到这种效果,所谓的遮罩层就是给一张图片不是我们想要的形状,这个时候我们就可以使用遮罩效果把这个图片变成我们想要的形状,一般使用最多就是圆形的效果, ...
- android 很多牛叉布局github地址(转)
原文地址 http://blog.csdn.net/luo15309823081/article/details/41449929 点击可到达github-------https://github.c ...
- .Net MVC+bootstrap Table学习
一.效果展示 二.使用方法 1).相关css和js的引用 <link href="~/Themes/Bootstrap/css/bootstrap.css" rel=&quo ...
- (python)图片处理Pillow模块的使用
Pillow中最重要的类就是Image,该类存在于同名的模块中.可以通过以下几种方式实例化:从文件中读取图片,处理其他图片得到,或者直接创建一个图片. 还有一个类为ImageDraw,用来画图. 1. ...