安装RabbitMQ服务器及基本配置

RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平台上。

装RabbitMQ服务器必须首先安装 Erlang 运行环境。

安装Erlang

安装Erlang 时要注意安装的RabbityMQ 所依赖的Erlang版本,根据RabbitMQ的要求选择一个版本,这里我要安装的RabbitMQ的版本是 3.7.7 ,他依赖的Erlang版本范围是

19.3.6.4 到 21.0.x,因此我选择版本是OTP 20.3. Erlang下载地址。下载Erlang安装包后直接安装就可以了。

设置ERLANG_HOME 环境变量

我这里是默认安装所以Erlang的安装路径在:

C:\Program Files\erl9.3\bin\erl.exe

点击确定在系统环境变量里就增加刚刚添加的ERLANG_HOME

注意:如果之前安装了Erlang的其他版本,需要卸载后在进行重新安装和设置。

在开始菜单查找Erlang,点击启动 打开如下界面,那么Erlang就安装成功了。接下来就安装RabbitMQ。

安装RabbitMQ

可以在RabbitMQ的官方网站下载最新版本的RabbitMQ服务器安装程序,RabbitMQ下载地址, 这里我下载的是官方推荐的最新版本rabbitmq-server-3.7.7.exe, 然后点击默认安装。

RabbitMQ安装好后是作为windows service 运行在后台。

设置RabbitMQ环境变量

RabbitMQ 安装好后在开始菜单输入rabbitmq 会看到三个菜单:

这里的三个菜单是提供控制Windows service的命令,为了能够在任意Windows命令窗口上操控RabbitMQ服务需要在系统里加一个环境变量并且配置在系统的PHTH环境变量中。

首先添加一个RABBITQM_SERVER变量:

然后在系统的path变量中配置如下:

这样就可以在windows administrator启动的CMD窗口操控RabbitMQ服务了。不需要每次都定位到:
C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.7\sbin>

安装 rabbitmq_management

我们用命令查看一下RabbtitMQ的所有插件:

C:\WINDOWS\system32>rabbitmq-plugins list

看到RabbtitMQ 罗列出来了很多插件

我们用下列命令安装rabbitmq_management插件,这款插件是可以可视化的方式查看RabbitMQ 服务器实例的状态,以及操控RabbitMQ服务器。

首先打开rabbuitmq的sbin目录

输入rabbitmq-plugins enable rabbitmq_managment

运行完命令后,看到下图表示安装成功了。

现在我们在浏览器中输入:http://localhost:15672 可以看到一个登录界面:

这里可以使用默认账号guest/guest登录后的界面如下:

在浏览器中输入 http://localhost:15672/api/ 就可以看到 RabbitMQ Management HTTP API 文档,如下图:

这样就可以查看RabbitMQ server实例状态的相关信息了。

管理rabbitmq_management的用户

用命令rabbitmqctl list_users 查看一下现rabbitmq_management注册用户

发现现在只有一个用户guest,并且它的tag是administrator.

那么在命令行下创建一个用户,创建用户的命令合是:

rabbitmqctl add_user [username] [password]

现在创建一个username=rabbit1 password=rabbit1的用户, 命令如下:

rabbitmqctl add_user rabbit1 rabbit1

创建成功了:

现在看下有多少用户,跑一下命令:

rabbitmqctl list_users

发现用户列表里多了一个用户 rabbit1,但是tag是空的。使用命令给rabbit设置tag,设置tag的命令格式:

rabbitmqctl set_user_tag [tag1] [tag2] ...

一次可以给一个用户设置多个tag,也可以设置一个

现在rabbit1 有两个tag了一个是administrator ,一个是none.

有5个tag可供选择,分别是:administrator ,monitoring,policymaker,management和none 有兴趣的同学可以到这里了解各个tag的含义,其实这里的tag代表的是权限,administrator是最高权限,none表示不能访问,这里administrator和none的组合,权限应该是向高看齐,忽略none,用的是administrator的权限。我们用rabbit1/rabbit1 登录rabbitmq_management。

其实有了rabbitmq_management这个可视化插件,很多事情都可以在这个插件里干,包括创建用户,创建交换机(Exchange)和创建队列(Queque)。

关于Rabbit的在windows下的基本配置就告一段落,关于更多的更高级的配置,可以参考官网,有了rabbitmq_management 插件确实方便了不少。下面就开始创建客户端进行测试了。

测试

创建两个.Net Core Console 类型的应用程序,一个用于发送消息,一个用于接收消息。

1. Send 端代码:

using System;
using System.Text;
using RabbitMQ.Client;

namespace Q.Demo.Send
{
    class Program
    {
        static void Main(string[] args)
        {
            var factory = new ConnectionFactory() { HostName = "localhost" };
            using (var connection = factory.CreateConnection())
            using (var channel = connection.CreateModel())
            {
                channel.QueueDeclare(queue: "hello",
                    durable: false,
                    exclusive: false,
                    autoDelete: false,
                    arguments: null);
                while (true)
                {
                    var input = Console.ReadLine();
                    string message = input;
                    var body = Encoding.UTF8.GetBytes(message);

                   channel.BasicPublish(exchange: "",
                    routingKey: "hello",
                    basicProperties: null,
                    body: body);
                Console.WriteLine(" [x] Sent {0}", message);
                }

            }

            Console.WriteLine(" Press [enter] to exit.");
            Console.ReadLine();
        }
    }
}

2.Receive端代码:

using System;
using System.Text;
using RabbitMQ.Client;
using RabbitMQ.Client.Events;

namespace Q.Demo.Receive
{
    class Program
    {
        static void Main(string[] args)
        {
            var factory = new ConnectionFactory() { HostName = "localhost" };
            using (var connection = factory.CreateConnection())
            using (var channel = connection.CreateModel())
            {
                channel.QueueDeclare(queue: "hello",
                    durable: false,
                    exclusive: false,
                    autoDelete: false,
                    arguments: null);

                var consumer = new EventingBasicConsumer(channel);
                consumer.Received += (model, ea) =>
                {
                    var body = ea.Body;
                    var message = Encoding.UTF8.GetString(body);
                    Console.WriteLine(" [x] Received {0}", message);
                };
                channel.BasicConsume(queue: "hello",
                    autoAck: true,
                    consumer: consumer);

                Console.WriteLine(" Press [enter] to exit.");
                Console.ReadLine();
            }
        }
    }
}

运行输入消息效果如下:

总结:

关于RabbitMQ在windows 下的安装和基本设置步骤:

1.安装对应版本的Erlang 并设置环境变量

2.安装RabbitMQ

3.设置环境变量

4.安装插件rabbitmq_management

5.有了插件rabbitmq_management很多事情就可以在这个可视化插件中来完成了。

原文地址:https://www.cnblogs.com/mark5/p/11602495.html

时间: 2025-01-14 05:37:06

安装RabbitMQ服务器及基本配置的相关文章

tar包方式安装samba服务器及其相关配置

一.Samba服务器软件的安装: 到Samba的官网下载安装包(https://download.samba.org/pub/samba/samba-3.2.25.tar.gz). 使用tar命令对压缩包解压: $ tar -zxvf samba-3.2.25.tar.gz 进入source目录(在3.4.x之后为source3目录): $ cd samba-3.2.25/source 如果source目录中没有configure脚本,需要使用如下命令进行生成(需要autogen的支持),如有则

Linux下源码安装nginx服务器以及部分配置

    Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(

Windows上安装RabbitMQ完成简单管理配置

1.下载rabbitmq-server 下载地址:http://www.rabbitmq.com/download.html 2.双击程序安装,如果没有安装Erlang的话需要先安装Erlang,下载地址:http://www.erlang.org/downloads 3.进入RabbitMQ的安装目录: cd rabbitmq_server-3.5.2\sbin 输入 rabbitmqctl status 验证安装成功,且服务开启 4.使用命令 rabbitmq-plugins enable

RabbitMQ实例教程:Windows下安装RabbitMQ

(1)下载RabbitMQ服务器 从RabbitMQ官网下载最新的稳定版.目前最新版本为3.5.1. (2)移除RabbitMQ老版本. 如果之前安装了老版本的话,或者想要将Erlang VM从32位升级到64位,需要手动卸载RabbitMQ服务器.因为安装过程中并不会停止或移除旧的服务. (3)安装RabbitMQ服务器 从Erlang官网下载Windows安装文件,并安装.RabbitMQ需要这个东西. 运行rabbitmq-server-3.5.1.exe,安装RabbitMQ并使用默认配

Centos6.5 安装rabbitmq

安装分两步 1.      从EPEL仓库安装Erlang 1)      使服务器能够使用EPEL,执行如下命令即可 su -c 'rpm -Uvhhttp://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm' 2)      执行如下命令安装erlang yum install erlang 在线安装,过程中要输入几个y,一直安装就可以. 等安装完成后,执行erl命令,出现如下字样说明安装成功 Er

CentOS7.0 安装NTP服务器及思科交换机NTP同步

一.安装环境: CentOS 7  Linux version 3.10.0-229.el7.x86_64 ntp-4.2.6p5-19.el7.centos.x86_64 二.安装及配置 2.1 安装 NTP可以直接通过yum来安装,使用 rpm -qa ntp可以查看是否已安装ntp服务,如有安装可使用yum install ntp 来升级,当然也可以不用升级. 命令: yum install ntp  #安装NTP服务器 2.2 配置 cat /etc/ntp.conf # For mor

服务器搭建--Linux安装rabbitmq

安装rabbitmq需要先安装erlang:安装erlang参考https://blog.csdn.net/ztx114/article/details/79912570 1.下载rabbitmq-server-generic-unix-3.6.15.tar.xz 我是安装在/usr/local/soft/目录下,首先切换到/usr/local/soft/目录没有soft文件夹的需要先创建文件夹: cd /usr/local/soft/[[email protected] soft]# tar

Dynamics AX 2012 R3 Demo 安装与配置 - 安装数据服务器、AOS和客户端 (Step 2)

上一节中,Reinhard主要讲解了怎么配置安装环境,尤其是域控制器,并在域中添加了一个管理员账户 MSDynAX.NET\Reinhard ,以后的安装配置,均在该账户下进行. 现在运行 AX 2012 R3 的安装程序,选择安装组件. 选择安装AX,点击下一步. 选择自定义安装,点击下一步. 我们先安装数据库服务器,点击下一步. 安装程序会检查必要的组件是否安装完毕.安装完毕后,点击下一步. 选择船舰数据库,点击下一步. 因为我们将数据库服务器安装到本机,所以保持默认即可.如果要安装到其他机

配置tomcat免安装版服务器

一.首先,确保服务器已经安装java环境,没有tomcat的可以到这里下载 http://tomcat.apache.org/ 二.解压下载的压缩包,我是解压到D盘根目录下的.记住这个目录,后面会用到的. 三.打开后的文件如图所示.在@echo off 后面加上你的java安装地址和刚刚记下的tomcat安装地址 SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10 SET CATALINA_HOME=D:\apache-tomcat-6.0.41 四.