RabbitMQ简介

RabbitMQ 是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以及可伸缩性出名的 Erlang 写成,因此也是继承了这些优点。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。RabbitMQ解决了应用程序之间的互联(connect)和规模(scale)的问题,消息发送和接收是隔离,发送方不知道消息最终由谁接收,接收方也不必关心消息是谁步发出的;发送和接收是隔离的,消息本质上就是异步的.这种隔离也就解耦了应用程序之间的依赖。RabbitMQ的角色就是应用程序中间的路由器。

规模(scale),应用程序解除了相互依赖之后从业务层面更容易做扩展,而Erlang的先天优势让代码层面的开发也更容易

安装erlang,执行命令`yum install -y erlang

出现下面图片则erlang安装成功。

下载RabbitMQ 执行命令wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.4.2/rabbitmq-server-3.4.2-1.noarch.rpm

安装RabbitMQ

执行rpm -ivh rabbitmq-server-3.4.2-1.noarch.rpm命令

第一次安装的时候出现了错误 ,##error: unpacking of archive failed on file /usr/lib/rabbitmq/lib/rabbitmq_server-3.4.2/ebin/dtree.beam;564c8512: cpio: read failed - Bad file descriptor##,截图如下

看到网上说重试几次可以,我将原来的rpm文件删除掉,重新下载安装成功。

执行rabbitmqctl status命令,得到如下的信息

Status of node rabbit@localhost ...
Error: unable to connect to node rabbit@localhost: nodedown DIAGNOSTICS
=========== attempted to contact: [rabbit@localhost] rabbit@localhost:
* connected to epmd (port 4369) on localhost
* epmd reports: node 'rabbit' not running at all
no other nodes on localhost
* suggestion: start the node current node details:
- node name: 'rabbitmqctl-6310@localhost'
- home dir: /var/lib/rabbitmq
- cookie hash: ybKnLWdtnBMcXHwE5BIbig==

执行/etc/init.d/rabbitmq-server restart命令,rabbitmq-server启动。

再次执行 rabbitmqctl status命令

Status of node rabbit@localhost ...
[{pid,6475},
{running_applications,[{rabbit,"RabbitMQ","3.4.2"},
{mnesia,"MNESIA CXC 138 12","4.5"},
{os_mon,"CPO CXC 138 46","2.2.7"},
{xmerl,"XML parser","1.2.10"},
{sasl,"SASL CXC 138 11","2.1.10"},
{stdlib,"ERTS CXC 138 10","1.17.5"},
{kernel,"ERTS CXC 138 10","2.14.5"}]},
{os,{unix,linux}},
{erlang_version,"Erlang R14B04 (erts-5.8.5) [source] [64-bit] [rq:1] [async-threads:30] [kernel-poll:true]\n"},
{memory,[{total,27093832},
{connection_readers,0},
{connection_writers,0},
{connection_channels,0},
{connection_other,2648},
{queue_procs,2648},
{queue_slave_procs,0},
{plugins,0},
{other_proc,9081872},
{mnesia,57424},
{mgmt_db,0},
{msg_index,35520},
{other_ets,758616},
{binary,8144},
{code,14503690},
{atom,1352841},
{other_system,1290429}]},
{alarms,[]},
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
{vm_memory_high_watermark,0.4},
{vm_memory_limit,411407155},
{disk_free_limit,50000000},
{disk_free,12885368832},
{file_descriptors,[{total_limit,924},
{total_used,3},
{sockets_limit,829},
{sockets_used,1}]},
{processes,[{limit,1048576},{used,121}]},
{run_queue,0},
{uptime,104}]

接下来安装mercurial git,执行yum install -y mercurial git命令

继续安装 rabbitmq-public-umbrella

cd /var/lib/rabbitmq && hg clone http://hg.rabbitmq.com/rabbitmq-public-umbrella
cd /var/lib/rabbitmq/rabbitmq-public-umbrella && make co

继续安装

cd /var/lib/rabbitmq/rabbitmq-public-umbrella/rabbitmq-management && make
cd /var/lib/rabbitmq/rabbitmq-public-umbrella/ && git clone
https://github.com/rabbitmq/rabbitmq-priority-queue
cd /var/lib/rabbitmq/rabbitmq-public-umbrella/rabbitmq-priority-queue && make
cp /var/lib/rabbitmq/rabbitmq-public-umbrella/rabbitmq-priority-queue/dist/rabbitmq_priority_queue-0.0.0.ez
/usr/lib/rabbitmq/lib/rabbitmq_server-3.4.2/plugins/
rabbitmq-plugins enable --offline rabbitmq_priority_queue
rabbitmq-plugins enable --offline rabbitmq_management
/etc/init.d/rabbitmq-server restart
rabbitmqctl status

浏览器 http://rabbitmq-server:15672

rabbitmq

rabbitmq-server

安装RabbitMQ(一)的更多相关文章

  1. windows下 安装 rabbitMQ 及操作常用命令

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...

  2. Windows安装RabbitMQ集群的几个注意点

    记录一下RabbitMQ在windows平台下安装的几个注意点- -,好记性不如烂笔头 安装过程与Linux安装一致,教程参照官网集群配置:此处只列举出几个注意点: 1. erlang的版本需要一致, ...

  3. 【先定一个小目标】windows下安装RabbitMQ消息服务器

    RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. 1:安装RabbitMQ 需要先安装Erlang语言开发包.下载地址  ...

  4. CentOS 7 安装RabbitMQ 3.3

    1.安装erlang 语言环境 安装依赖文件 #yum install ncurses-devel 进入 http://www.erlang.org/download.html 选择源文件下载 wge ...

  5. 安装rabbitmq

    安装配置epel源 $ rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm 安装erlan ...

  6. RabbitMQ系列之Centos 7安装RabbitMQ 3.6.1

    1.安装EPEL-7: rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm 2.安 ...

  7. 整理单机安装RabbitMQ,留着备用

    一.安装erlang 1.安装erlang依赖: yum install build-essential openssl openssl-devel unixODBC unixODBC-devel m ...

  8. 【RabbitMQ】CentOS安装RabbitMQ,及简单的Java客户端连接

    在CentOS安装 因Rabbit MQ使用Erlang,所以需要先安装Erlang,安装过程中可能会遇到种种问题,可参考CentOS 6.5安装Erlang/OTP 17.0.然后就可以安装MQ了. ...

  9. 在Centos上安装RabbitMQ流程(转)

    在Centos上安装RabbitMQ流程------------------------ 1. 需求 由于项目中要用到消息队列,经过ActiveMQ与RabbitMQ的比较,最终选择了RabbbitM ...

  10. 安装rabbitmq以及python调用rabbitmq--暂欠

    一.安装erlang yum install erlang 二.安装rabbitmq rpm包: wget http://www.rabbitmq.com/releases/rabbitmq-serv ...

随机推荐

  1. sublime如何实现函数折叠

    Ctrl+Shift+[ 折叠代码 Ctrl+Shift+] 展开代码 Ctrl+KT 折叠属性 Ctrl+K0 展开所有

  2. Kafka 使用Java实现数据的生产和消费demo

    前言 在上一篇中讲述如何搭建kafka集群,本篇则讲述如何简单的使用 kafka .不过在使用kafka的时候,还是应该简单的了解下kafka. Kafka的介绍 Kafka是一种高吞吐量的分布式发布 ...

  3. Java 对二值化图片识别连通域

    用Java 对 已经 二值化了的图片 标记连通域 每块的连通域都标记不一样的数字 public static void main(String [] args) throws IOException ...

  4. Guake!

    快捷键及其定制: [全局快捷键] F12:显示/隐藏Guake的程序界面. [局部快捷键] Ctrl+Shift+T:新建标签页: Ctrl+Shift+W:关闭标签页: Ctrl+Shift+C:复 ...

  5. 怎么解决ERROR in Node Sass does not yet support your current environmen问题?

    好久没有重新安装node.js,昨天和小伙伴们一起安装,由于自己是在网上自行下载的node,安装地比较顺利,但另外两个小伙伴用的共享文件夹里自带的node,却是屡次碰到问题,快被逼疯,在运行Vue时总 ...

  6. 爬虫利器BeautifulSoup模块使用

    一.简介 BeautifulSoup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式,同时应用场景也是非常丰富,你可以使用 ...

  7. programing

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...

  8. i2c总线的oled12864屏的u8x8运用总结

    github网址链接 https://github.com/olikraus/u8g2/wiki/u8x8reference#print 用到的库文件 #ifdef U8X8_HAVE_HW_SPI ...

  9. commons-logging的使用

    简介 commons-logging是Apache commons类库中的一员.Apache commons类库是一个通用的类库,提供了基础的功能,比如说commons-fileupload,comm ...

  10. PowerCLI: One-Liner to get VMs, Clusters, ESX Hosts and Datastores并导入数据库中

    需求:定期自动获取Vm在VCenter中对应的cluster.ESX.Datastore信息,同时将变化或者新增的数据上传到数据库中 解决思路分析: 1 首先使用VMware的powerCLI工具通过 ...