共计 4411 个字符,预计需要花费 12 分钟才能阅读完成。
我们在项目开发的时候都不可避免的会有异步化的问题,比较好的解决方案就是使用消息队列,可供选择的队列产品也有很多,比如轻量级的 redis,当然还有重量级的专业产品 rabbitmq,rabbitmq 好就好在是用 erlang(二郎神)开发的,它那天生的 OTP 并行计算框架,轻而易举的进程间通讯,我都恨不得将后端的内存计算框架全部换成 erlang。。。开个玩笑,这篇我们具体来讲讲 erlang 开发的一个成品,叫做 rabbitmq。
一:环境安装
这些开源性的产品没多少是建议用户部署在 windows 上的,不过 rabbitmq 除外,为了更加贴近实际的应用场景,我们这里还是部署在 CentOS7 上。
1. 安装 erlang
刚才也说了,rabbitmq 只不过是 erlang 开发的一个成品而已,所以我们首先一定要安装好 erlang 环境才可以。。。http://www.erlang.org/downloads
当然你也可以 wget 一下这个下载链接也没毛病。。。
wget http://10.65.255.231/IXCb7261d0152b8aa2ad1f25a55bf0e761f/download/otp_src_19.1.tar.gz
然后解压一下,修改一下文件夹叫做 erlang,如图:
接下来我们要安装各种 erlang 需要的依赖库,包括 gcc,kernel-devel,ncurses-devel 等等,如下:
[root@localhost ~]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel
稍等片刻之后,我们就安装好了,接下来我们深入到 erlang 文件夹下,进行 configure 安装环境配置,–prefix=/usr/erlang 是说明将当前的安装放在
usr/erlang 文件夹下。
[root@localhost erlang]# ./configure --prefix=/usr/erlang --without-Javac
这里一定要看清楚了,我开启的 Terminal 已经是在 erlang 文件夹下面的哦。
ok,如果你安装顺利的话,就是上面这样的一个界面,这就说明安装通过了,接下来我们可以执行 make 命令进行编译。
[root@localhost erlang]# make
稍等片刻后,如果安装顺利的话,我们就可以执行 make install 即可。
[root@localhost erlang]# make
install
然后就可以看到,在 /usr 文件夹下面就有一个编译好的 erlang 文件夹,不信你看。
到现在为止,erlang 就已经安装好了,是不是有一种冲动加上好吊的样子呢???现在就拭目以待的启动吧~~~
[root@localhost bin]# ./erl
二:安装 Rabbitmq 环境
rabbitmq 安装起来就非常简单了,因为在官网上不光提供了 source 模式的源代码,也提供了 binary 的二进制文件,这里为了方便,我们就下载
binary 吧,网址是:http://www.rabbitmq.com/download.html
接下来我们把这个 binary 下载下来后,也放到 /usr 文件夹下面,可以看到这个 rabbitmq-server 就是 rabbitmq 的启动程序,如下图:
然后你可以兴致勃勃的启动,恭喜你,遇到 erl command not found 错误。。。
[root@localhost sbin]# ./rabbitmq-server
./rabbitmq-server: line 67: erl: command not found
[root@localhost sbin]#
那这个问题该怎么解决呢???其实很简单,我只需要配置下 erlang 的环境即可,为了方便,我也可以将 rabbimq 的环境变量一起配置了。。。
当然 centos 中环境变量文件就是 /etc/profile,不信你看哦。。。
#set erlang environment
export PATH=$PATH:/usr/erlang/bin
#set rabbitmq environment
export PATH=$PATH:/usr/rabbitmq/sbin
然后在 terminal 中执行以下命令 source /etc/profile 让配置在当前 ternimal 中生效,生效之后,就可以在 terminal 上执行 erl 就可以啦。。。
[root@localhost sbin]# ./rabbitmq-server
./rabbitmq-server: line 67: erl: command not found
[root@localhost sbin]# source /etc/profile
[root@localhost sbin]# erl
Erlang/OTP 19 [erts-8.1] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V8.1 (abort with ^G)
1>
同样现在也可以在 terminal 上直接执行 rabbitmq-server。。。不过你一定要记住,这个 source 只在当前的 terminal 上有效,除非重启 centos 全局生效。
[root@localhost Desktop]# source /etc/profile
[root@localhost Desktop]# rabbitmq-server
RabbitMQ 3.6.5. Copyright (C) 2007-2016 Pivotal Software, Inc.
## ## Licensed under the MPL. See http://www.rabbitmq.com/
## ##
########## Logs: /usr/rabbitmq/var/log/rabbitmq/rabbit@localhost.log
###### ## /usr/rabbitmq/var/log/rabbitmq/rabbit@localhost-sasl.log
##########
Starting broker...
completed with 0 plugins.
三:开启 web 监控
rabbitmq 最牛逼的一个地方就是自带一个高配的监控,所以必须将其启动,你只需要启动插件 rabbitmq_management 就可以了。。。。
[root@localhost Desktop]# rabbitmq-plugins enable rabbitmq_management
然后键入 127.0.0.1:15672 就可以看到啦。。使用 guest, guest 登陆,是不是好吊的样子撒!
好了,本篇就说到这里,希望对你有帮助~~~
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
RabbitMQ 的详细介绍 :请点这里
RabbitMQ 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-11/13673.htm