1.首先安装Erlang
[1] 安装依赖组件
yum install epel-release yum install unixODBC unixODBC-devel wxBase wxGTK SDL wxGTK-gl
[2] 可能会出现如下错误erlang >= 19.3 被 rabbitmq-server-3.7.9-1.el7.noarch,通过下面步骤解决
[3] 设置RabbitMQ的依赖源, 编辑/etc/yum.repos.d/rabbitmq-erlang.repo输入以下内容:
[rabbitmq-erlang] name=rabbitmq-erlang baseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/20/el/7 gpgcheck=1 gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc repo_gpgcheck=0 enabled=1
2. 下载RabbitMQ的安装包
# yum clean all # yum makecache # wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.9/rabbitmq-server-3.7.9-1.el7.noarch.rpm
3. yum install rabbitmq-server-3.7.9-1.el7.noarch.rpm
4. 出现的问题
[1] 问题1
Transaction check error: file /usr/bin/epmd from install of erlang-20.3.8.10-1.el7.centos.x86_64 conflicts with file from package esl-erlang-21.1.1-1.x86_64 file /usr/bin/erl from install of erlang-20.3.8.10-1.el7.centos.x86_64 conflicts with file from package esl-erlang-21.1.1-1.x86_64 file /usr/bin/erlc from install of erlang-20.3.8.10-1.el7.centos.x86_64 conflicts with file from package esl-erlang-21.1.1-1.x86_64 file /usr/bin/escript from install of erlang-20.3.8.10-1.el7.centos.x86_64 conflicts with file from package esl-erlang-21.1.1-1.x86_64 file /usr/bin/run_erl from install of erlang-20.3.8.10-1.el7.centos.x86_64 conflicts with file from package esl-erlang-21.1.1-1.x86_64 file /usr/bin/to_erl from install of erlang-20.3.8.10-1.el7.centos.x86_64 conflicts with file from package esl-erlang-21.1.1-1.x86_64:
解决:卸载冲突的组件
yum remove esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64 esl-erlang-21.1.1-1.x86_64
解决参考网址:https://blog.csdn.net/huijiangu4621/article/details/83619707
5. RabbitMQ 管理
[1] 启动RabbitMQ # rabbitmq-server start # rabbitmqctl stop [2] 用户管理 # rabbitmqctl add_user admin admim # rabbitmqctl delete_user admin # rabbitmqctl list_users # rabbitmqctrl change_password admin admin123 [3] 权限管理 # rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" # rabbitmqctl list_permissions -p / # rabbitmqctl clear_permissions -p / admin 说明: -p /:代表 set_permissions 控制条目应该用到哪个 vhosts 上; admin:代表被授权的用户名字; ".*" ".*" ".*":分别代表配置、读和写权限,而其中的 ".*" 为正则表达式,代表匹配所有权限; [4] 角色管理 # rabbitmqctl set_user_tags admin administrator # rabbitmqctl list_users 说明: 为用户添加权限,已经基本可以满足我们的需求了,但有时,我们可以使用系统预置的角色,为用户赋予角色,那么该用户也就拥有了该角色所赋予的所有权限了,在 RabbitMQ 中,角色大致分为超级管理员、监控者、策略制定者、普通管理者以及其他,它们的区别是什么? (1) 超级管理员(administrator) 可登陆管理控制台(启用managementplugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。 (2) 监控者(monitoring) 可登陆管理控制台(启用managementplugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等) (3) 策略制定者(policymaker) 可登陆管理控制台(启用managementplugin的情况下),同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。 (4) 普通管理者(management) 仅可登陆管理控制台(启用managementplugin的情况下),无法看到节点信息,也无法对策略进行管理。 [5] 启用/禁用Web控制台 # rabbitmq-plugins enable/disabled rabbitmq_management
[6] PHP 与 RabbitMQ 基础操作
(1) 在项目根目录创建 composer.json 文件。内容如下: { "require": { "php-amqplib/php-amqplib": ">=2.6.1" } } (2) $ composer install (3) 然后新建send.php发送消息内容如下: <?php require_once __DIR__ . '/vendor/autoload.php'; use PhpAmqpLib\Connection\AMQPStreamConnection; use PhpAmqpLib\Message\AMQPMessage; // [1] 创建 RabbitMQ 连接 $connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest'); // [2] 打开一个通道。 $channel = $connection->channel(); // [3] 定义一个队列。 $channel->queue_declare('hello', false, false, false, false); // [4] 创建一条字符串消息对象。 $msg = new AMQPMessage('Hello World!'); // [5] 向队列当中推送一条消息。 $channel->basic_publish($msg, '', 'hello'); echo " [x] Sent 'Hello World!'\n"; // [6] 关闭通道。 $channel->close(); // [7] 关闭连接。 $connection->close(); (4) 接收队列消息并消费 require_once __DIR__ . '/vendor/autoload.php'; use PhpAmqpLib\Connection\AMQPStreamConnection; // [1] 创建 RabbitMQ 连接。 $connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest'); // [2] 打开一个通道。 $channel = $connection->channel(); // [3] 定义一个队列。 $channel->queue_declare('hello', false, false, false, false); echo ' [*] Waiting for messages. To exit press CTRL+C', "\n"; // [4] 定义一个匿名方法处理接收到的消息。 $callback = function($msg) { echo " [x] Received ", $msg->body, "\n"; }; // [5] 设置接收到的消息由谁来消息。 $channel->basic_consume('hello', '', false, true, false, false, $callback); // [6] 循环等待接收队列的消息。 while(count($channel->callbacks)) { $channel->wait(); } (5) 启动脚本 #php receive.php #php php send.php
参考网址: https://www.jianshu.com/p/3528eb0481c8
相关推荐
centos7离线安装rabbitmq需要的安装包1,版本已经做了匹配: erlang-23.3.4.10-1.el7.x86_64.rpm rabbitmq-server-3.8.26-1.el7.noarch.rpm socat-1.7.3.2-2.el7.x86_64.rpm
在本教程中,我们将深入探讨如何在 CentOS 7 操作系统上安装 RabbitMQ,这是一个流行的开源消息代理,基于AMQP(Advanced Message Queuing Protocol)协议。RabbitMQ 使用 Erlang 语言开发,它提供了一个可靠的平台...
在Linux系统,特别是CentOS 7环境中安装RabbitMQ,这是一个关键的任务,因为RabbitMQ是一个广泛使用的开源消息代理和队列服务器,基于Erlang编程语言开发。它支持多种消息协议,使得分布式系统中的异步任务处理和...
RabbitMQ安装及集群的pdf档,网页版下载后整理的,可以用作记录或者操作手册使用。跟网页版原文一模一样
在本文中,我们将深入探讨如何在CentOS 7系统上安装RabbitMQ,这是一个流行的开源消息代理和队列管理器。RabbitMQ基于Erlang编程语言,因此在安装RabbitMQ之前,我们需要先安装Erlang环境。本文将涵盖以下几个关键...
CentOS7 安装 RabbitMQ 集群 在本节中,我们将介绍如何在 CentOS7 上安装 RabbitMQ 集群。RabbitMQ 是一个流行的开源消息队列服务器,可以用于分布式系统中的消息传递和队列管理。 一、安装 Erlang 运行环境 ...
### CentOS 6.6安装RabbitMQ全过程 #### 一、前言 在现代软件架构中,消息中间件扮演着非常重要的角色,特别是在分布式系统中,它能够有效地解耦服务,提高系统的稳定性和可扩展性。RabbitMQ作为一款开源的消息代理...
在本教程中,我们将深入探讨如何在CentOS 6.5操作系统上安装并配置RabbitMQ,这是一个广泛使用的开源消息代理和队列管理器,基于AMQP(Advanced Message Queuing Protocol)协议。RabbitMQ提供了高可用性、可扩展性...
Centos 6.8安装RabbitMQ ,自己理解的,希望能够帮助大家。
在 CentOS 7 系统上安装 RabbitMQ 需要遵循一系列步骤,因为默认的 YUM 软件仓库中的 RabbitMQ 和 Erlang 版本可能较低。首先,我们需要安装最新版的 Erlang,因为 RabbitMQ 需要特定版本以上的 Erlang。这可以通过...
以rabbitmq3.6版本为例
在centos6安装rabbitmq教程,真实有效。需要有esl-erlang_17.3-1~centos~6_amd64.rpm,esl-erlang-compat-R14B-1.el6.noarch.rpm和rabbitmq-server-3.4.1-1.noarch.rpm
Centos7下安装MongoDB Centos7下安装MongoDB是指在Centos7操作系统中安装和配置MongoDB数据库的过程。MongoDB是一个基于分布式文件存储的NoSQL数据库,由C++语言编写,运行稳定,性能高旨在为 WEB 应用提供可扩展的...
20160802日自己安装rabbitmq笔记(有详细截图) 1.rpm安装erlang 2.rpm安装rabbitmq 3.配置可视化 希望对大家有用
解决centos下安装rabbitmq安装困难的问题,命令在阿里云服务器中已测试并通过。安装完毕后可直接启动rabbitmq
【标题】:“CentOS7下安装配置RabbitMQ详细教程1” 【描述】:这篇教程是针对初学者的,旨在提供在CentOS 7操作系统上安装和配置RabbitMQ的详细步骤,避免复杂的集群和分布式架构,适合入门学习。 【标签】:...
在这个场景中,我们讨论的是如何在 CentOS7 上安装 RabbitMQ 的 3.8.4 版本,同时需要先安装其依赖——Erlang 的 23.0.2 版本。 首先,Erlang 是一个由Ericsson开发的编程语言,主要用于构建高可用性、分布式和实时...
CentOS7安装RabbitMQ:介绍在CentOS7系统中如何安装和配置RabbitMQ,包含一些RabbitMQ的基本命令等