一、安装

1、安装Erlang

1)系统编译环境(这里采用linux/unix 环境)

① 安装环境

虚拟机:VMware® Workstation 10.0.1 build

Linux系统:CentOS6.5

rabbitMQ官网下载:http://www.rabbitmq.com/download.html

Erlang的官网下载: http://www.erlang.org/download.html

2)Rabbitmq所需要的附属包(erlang、simplejson)安装:

 ① 安装erlang

RabbitMQ是基于Erlang的,所以首先必须配置Erlang环境。

从Erlang的官网http://www.erlang.org/download.html 下载最新的erlang安装包,我下载的版本是 otp_src_R14B03.tar.gz 。

然后:

  • 然后解压下载的gz包  tar zxcf  *.tar.gz
  • cd 进入解压出来的文件夹
  • 执行./configure --prefix=/opt/erlang  就会开始编译安装  会编译到 /opt/erlang 下 然后执行
  • make 和 make install
  • 编译完成以后,进入/opt/erlang,输入erl测试erlang是否安装成功。
  • 修改/etc/profile文件,增加下面的环境变量:
  • #set erlang environment
  • export PATH=$PATH:/opt/erlang/bin
  • source profile使得文件生效
  • 肯能会出现找不到包的情况,就直接yum install 吧!

安装完Erlang,那么开始装RabbitMQ-Server ,主要参考官方文档:http://www.rabbitmq.com/build-server.html  ;

② 安装simplejson(如果需要安装Python版本的话)

需要安装一个比较新的Python版本。安装略,比较简单。

需要安装simplejson。从此处下载最新的版本:http://pypi.python.org/pypi/simplejson#downloads 。我下载的版本是 simplejson-2.2.1.tar.gz

2、安装RabbitMQ

   然后安装RabbitMQ Server。从此处下载源代码版本的RabbitMQ:http://www.rabbitmq.com/server.html。我下载的版本是 rabbitmq-server-generic-unix-2.7.1.tar.gz
  1. rabbitmq的安装有很多版本,我们使用Generic Unix版本。
  2. cd /
  3. wget http://www.rabbitmq.com/releases/rabbitmq-server/v2.7.1/rabbitmq-server-generic-unix-2.7.1.tar.gz下载rabbitmq
  4. tar zxvf rabbitmq-server-generic-unix-2.7.1.tar.gz -C /opt解压到指定的文件夹下
  5. cd /opt,建立软链接ln -s rabbitmq-server-generic-unix rabbitmq
  6. cd rabbitmq/sbin,./rabbitmq-server -detached可以实现后台启动
  7. 修改/etc/profile,添加环境变量
  8. #set rabbitmq environment
  9. export PATH=$PATH:/opt/rabbitmq/sbin
  10. source profile使得文件生效
  11. cd /opt/rabbitmq/sbin,./rabbitmqctl stop关闭rabbitmq
  12. 这样就完成了安装

这样就安装成功。

3、试运行

  1. 启用管理方式(用网页方式管理MQ)cd /opt/rabbitmq/sbin/
  2. 执行./rabbitmq-plugin enable rabbitmq-management
  3. 然后访问http://localhost:55672

二、配置

主要参考官方文档: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

三、监控

主要参考官方文档:http://www.rabbitmq.com/management.html

RabbitMQ提供了一个web的监控页面系统,这个系统是以Plugin的方式进行调用的。

首先,在rabbitmq-env.conf中配置好plugins目录的位置:RABBITMQ_CONFIG_FILE

将监控页面所需要的plugin下载到plugins目录下,这些plugin包括:

  • mochiweb
  • webmachine
  • rabbitmq_mochiweb
  • amqp_client
  • rabbitmq_management_agent
  • rabbitmq_management

下载路径位于:http://www.rabbitmq.com/plugins.html#rabbitmq_management

重新启动RabbitMQ,输入http://server-name:55672/mgmt/ 就能够进入到监控页面。默认的用户名和密码是: guest 和 guest。

柯南君:看大数据时代下的IT架构(3)消息队列之RabbitMQ-安装、配置与监控的更多相关文章

  1. 柯南君:看大数据时代下的IT架构(5)消息队列之RabbitMQ--案例(Work Queues起航)

    二.Work Queues(using the Java Client) 走起   在第上一个教程中我们写程序从一个命名队列发送和接收消息.在这一次我们将创建一个工作队列,将用于分发耗时的任务在多个工 ...

  2. 柯南君:看大数据时代下的IT架构(4)消息队列之RabbitMQ--案例(Helloword起航)

    柯南君:看大数据时代下的IT架构(4)消息队列之RabbitMQ--案例(Helloword起航) 二.起航 本章节,柯南君将从几个层面,用官网例子讲解一下RabbitMQ的实操经典程序案例,让大家重 ...

  3. 看大数据时代下的IT架构(1)业界消息队列对比

    一.MQ(Message Queue) 即 消息队列,一般用于应用系统解耦.消息异步分发,能够提高系统吞吐量.MQ的产品有很多,有开源的,也有闭源,比如ZeroMQ.RabbitMQ. ActiveM ...

  4. 柯南君:看大数据时代下的IT架构(2)消息队列之RabbitMQ-基础概念详细介绍

    一.基础概念详细介绍 1.引言 你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用.通讯的问题而苦恼.挣扎?如果是,那么恭喜你,消息服务让你可以很轻松 ...

  5. 柯南君:看大数据时代下的IT架构(9)消息队列之RabbitMQ--案例(RPC起航)

    二.Remote procedure call (RPC)(using the Java client) 三.Client interface(客户端接口) 为了展示一个RPC服务是如何使用的,我们将 ...

  6. 柯南君:看大数据时代下的IT架构(6)消息队列之RabbitMQ--案例(Publish/Subscribe起航)

    二.Publish/Subscribe(发布/订阅)(using the Java Client) 为了说明这个模式,我们将构建一个简单的日志系统.它将包括两个项目: 第一个将发出日志消息 第二个将接 ...

  7. 柯南君:看大数据时代下的IT架构(8)消息队列之RabbitMQ--案例(topic起航)

    二.Topic(主题) (using the Java client) 上一篇文章中,我们进步改良了我们的日志系统.我们使用direct类型转发器,使得接收者有能力进行选择性的接收日志,,而非fano ...

  8. 柯南君:看大数据时代下的IT架构(7)消息队列之RabbitMQ--案例(routing 起航)

    二.Routing(路由) (using the Java client) 在前面的学习中,构建了一个简单的日志记录系统,能够广播所有的日志给多个接收者,在该部分学习中,将添加一个新的特点,就是可以只 ...

  9. 大数据时代下EDM邮件营销的变革

    根据研究,今年的EDM邮件营销的邮件发送量比去年增长了63%,许多方法可以为你收集用户数据,这些数据可以帮助企业改善自己在营销中的精准度,相关性和执行力. 最近的一项研究表明,中国800强企业当中超过 ...

随机推荐

  1. linux 删除和安装java

    一.jdk1.4卸载 由于redhat Enterprise 5 中自带安装了jdk1.4的,所以在安装jdk1.6前我把jdk1.4的卸了,步骤如下:   1.打开终端输入#rpm -qa | gr ...

  2. Android Fragment真正意义上的onResume和onPause

    Fragment虽然有onResume和onPause的,但是这两个方法是Activity的方法,调用时机也是与Activity相同,和ViewPager搭配使用这个方法就很鸡肋了,根本不是你想要的效 ...

  3. PNPOLY - Point Inclusion in Polygon W. Randolph Franklin

    测试目标点是否在多边形内int pnpoly(int nvert, float *vertx, float *verty, float testx, float testy) { int i, j, ...

  4. Amazon MWS 上传数据 (一) 设置服务

    Amazon 上传数据的流程为: 通过 SubmitFeed 操作.加密标头和所有必需的元数据(包括 FeedType 的值在内),来提交 XML 或文本型数据文件.正如亚马逊 MWS的所有提交内容一 ...

  5. ab压力测试报错: apr_socket_recv: Connection reset by peer (104)

    使用ab对网站进行压力测试,开始设置并发500,可以正常使用,当设置并发为1000,则报错: apr_socket_recv: Connection reset by peer (104) 改服务端a ...

  6. jQuery背景跟随鼠标移动的网页导航

    首页 PSD模板 CSS模板 特效插件 源码下载 酷站欣赏 建站资源 建站教程 心境之旅 在线留言 设为首页 加入收藏 我要投稿 联系站长 Search     首页 PSD模板 CSS模板 特效插件 ...

  7. 递归与arguments.callee;

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. sqlplus handbook

    1.直接敲sqlplus并回车就是启动SQL*PLUS,输入user及password将使用户登陆到缺省的数据库. 请输入用户名: 2.sqlplus user/password@SERVICE_NA ...

  9. js复制button在ie下的解决方式

    源代码例如以下: <input class="width200" maxlength="32" type="text" id=&quo ...

  10. ruby中输入命令行编译sass(ruby小白)

    Ruby(或cmd中)输入命令行编译sass步骤如下: (1)举例而言:首先在F盘下建立一个总文件夹,比如test文件夹:其次在该文件夹下建立html,images,js,sass等文件夹. (2)在 ...