我是靠谱客的博主 寂寞草莓,最近开发中收集的这篇文章主要介绍Centos-7 安装 RabbitMQ安装 RabbitMQ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

RabbitMQ 的特性

RabbitMQ使用Erlang语言编写,使用Mnesia数据库存储消息。

  1. 可靠性,RabbitMQ 使用一些机制来保证可靠性,如持久化、传输确认、发布确认
  2. 灵活的路由 ,在消息进入队列之前,通过 Exchange 来路由消息的。
  3. 消息集群 ,多个RabbitMQ服务器可以组成一个集群,形成一个逻辑Broker
  4. 高可用,队列可以再集群中的机器上进行镜像,使得部分节点出问题的情况下队列仍然可用
  5. 多种协议,支持AMQP,STOMP,MQTT
  6. 管理界面,提供了一个易用的用户界面,使得用户可以监控和管理消息,集群中的节点
  7. 插件机制

工作模型

概念解释
Broker即RabbitMQ的实体服务器。提供一种传输服务,维护一条从生产者到消费者的传输线路,保证消息数据能按照指定的方式传输。
Exchange消息交换机。指定消息按照什么规则路由到哪个队列Queue。
Queue消息队列。消息的载体,每条消息都会被投送到一个或多个队列中。
Binding绑定。作用就是将Exchange和Queue按照某种路由规则绑定起来。
Routingkey路由关键字。Exchange根据Routing Key进行消息投递。定义绑定时指定的关键字称为Binding Key。
Vhost虚拟主机。一个Broker可以有多个虚拟主机,用作不同用户的权限分离。一个虚拟主机持有一组Exchange、Queue和Binding。
Producer消息生产者。主要将消息投递到对应的Exchange上面。一般是独立的程序。
Consumer消息消费者。消息的接收者,一般是独立的程序。
ConnectionProducer 和 Consumer 与Broker之间的TCP长连接。
Channel消息通道,也称信道。在客户端的每个连接里可以建立多个Channel,每个Channel代表一个会话任务。在RabbitMQ Java Client API中,channel上定义了大量的编程接口。

安装 RabbitMQ

安装环境 Centos-7

安装 Erlang

wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el6.x86_64.rpm
rpm -ivh erlang-19.0.4-1.el6.x86_64.rpm

安装 RabbitMQ

下载rabbitmq 并 安装

wget https://dl.bintray.com/rabbitmq/rabbitmq-server-rpm/rabbitmq-server-3.6.12-1.el6.noarch.rpm
rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
rpm -ivh rabbitmq-server-3.6.12-1.el6.noarch.rpm

问题解决

如果出现 依赖检测失败:

error: Failed dependencies:
        socat is needed by rabbitmq-server-3.6.12-1.el6.noarch

或者

error: Failed dependencies:
        erlang >= R16B-03 is needed by rabbitmq-server-3.6.12-1.el6.noarch

解决报错:

wget –no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo
yum makecache -y
yum install socat -y

如果出现 yum 源有问题,

无法安装:将CentOS的yum源更换为国内的阿里云源

File contains no section headers.
file: file:///etc/yum.repos.d/convirt.repo, line: 1
'<html>rn'

解决报错

rm -f /etc/yum.repos.d/*
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all

配置

创建rabbitmq的配置文件,并允许guest进行登录

vi /etc/rabbitmq/rabbitmq.config
[{rabbit, [{loopback_users, []}]}].

更改rabbitmq的环境变量

vi /etc/rabbitmq/rabbitmq-env.conf
RABBITMQ_MNESIA_BASE=/guaoran/rabbitmq/mnesia
RABBITMQ_LOG_BASE=/guaoran/rabbitmq/log

创建数据目录和log目录

mkdir -pv /guaoran/rabbitmq/log
chown -R rabbitmq:rabbitmq /guaoran/rabbitmq

启用management插件

rabbitmq-plugins enable rabbitmq_management

如果报错

Plugin configuration unchanged.

Applying plugin configuration to rabbit@localhost... failed.
 * Could not contact node rabbit@localhost.
   Changes will take effect at broker restart.
 * Options: --online  - fail if broker cannot be contacted.
            --offline - do not try to contact broker

解决方案

vi /etc/selinux/config

SELINUX=disabled

重启系统 reboot 问题解决

sestatus 查看是否已修改成功

添加用户 root

rabbitmqctl add_user guaoran guaoran
rabbitmqctl set_user_tags guaoran administrator  
rabbitmqctl set_permissions -p / guaoran '.*' '.*' '.*'

最后

以上就是寂寞草莓为你收集整理的Centos-7 安装 RabbitMQ安装 RabbitMQ的全部内容,希望文章能够帮你解决Centos-7 安装 RabbitMQ安装 RabbitMQ所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部