RabbitMQ安装配置和基于EasyNetQ驱动的基础使用

RabbitMQ基本概念和原理

1.AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。

2.RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写。

3.Channel

Channel是我们与RabbitMQ打交道的最重要的一个接口,我们大部分的业务操作是在Channel这个接口中完成的,包括定义Queue、定义Exchange、绑定Queue与Exchange、发布消息等。

4.Exchange(生产者将消息发送到Exchange(交换器),由Exchange将消息路由到一个或多个Queue中(或者丢弃),RabbitMQ常用的Exchange Type有fanout、direct、topic、headers这四种)

5.Queue(RabbitMQ的内部对象,用于存储消息)

6.基本工作原理

客户端(生产者) send Message -->Exchange (交换机通过不同的类型将消息保存到对应的queue)-->Queue

客户端(消费者)通过订阅来消费queue中的消息。

以上基础概念整理来源于 RabbitMQ基础概念详细介绍

在Windows系统中安装RabbitMQ

1. 下载安装erlang (我用的是otp_win64_19.3版本)

下载地址 http://www.erlang.org/downloads(根据操作系统选择32还64位)

2. 下载安装rabbitmq-server(我用的是rabbitmq-server-3.6.10版本)

下载地址 http://www.rabbitmq.com/install-windows.html

安装好后,在看装目录下看到

接下来用启用DOS命令

a. cd 到sbin目录下,我的安装目录是D:\RabbitMQServer\rabbitmq_server-3.6.10\sbin, 输入D: 回车,cd  RabbitMQServer\rabbitmq_server-3.6.10\sbin

b. 查看安装是否成功命令 :rabbitmqctl status

c.安装管理插件命令:rabbitmq-plugins enable rabbitmq_management

安装成功,在浏览器中输入 http://127.0.0.1:15672/

输入来宾账号 guest 密码 guest ,成功登陆进来,是不是有点小激动。

guest 账号是管理员账号,可以添加Exchanges,Queues,Admin。但我们一般不使用guest账号,继续用命令来添加账号和权限。

d:添加用户:rabbitmqctl.bat add_user username password

e:添加“超级管理员”角色: rabbitmqctl.bat set_user_tags username administrator

mymq账号也是超级管理员了,Can access virtual hosts :No access ,可以看到还没有能够访问的虚拟机,接下来添加虚拟机。

f: 添加虚拟机:  rabbitmqctl add_vhost vhostName

myvhost虚拟机并没有Users,接下来给虚拟机绑定账号。

g:定虚拟机和用户权限:rabbitmqctl set_permissions -p 虚拟机名称 账户名 ".*" ".*" ".*"

h:处于习惯我一般删除掉guest账号:rabbitmqctl.bat delete_user username

好了,重新登陆管理页面,一切正常,接下来开始实战了。

EasyNetQ的基本使用

项目中安装EasyNetQ

EasyNetQ是依赖于RabbitMQ.Client的,所以会被一并安装到项目中。

Publish发布消息

Model有个Queue的特性,定义Queue名称和Exchange名称。然后直接用Publish方法把Msg通过Model指定的交换机推送到指定队列去。

运行代码,看看MQ的管理页面。

已经创建了Model指定的交换机TestQueue.Exchange, Type:topic , Features:D 。D:Durable 说明默认创建的交换机是持久化的。

因为还没有订阅消息,所以在Queues中还看不到对应的队列。

Subscribe订阅消息

为什么要在订阅代码上套一个while(true)了? 是为了把控制台程序模拟成Windows服务,因为控制台程序运行一闪而过,没办法真正订阅到MQ的消息。

实际开发中,一般用Topself来把控制台程序发布成Windows服务,后面有时间再写一篇关于Topself的学习博客。

再重复刚才的Publish操作,测试下整个流程。

自定义Topic

这样消息会被发送到名称为Test.开头的所有Queue队列中。

Send和Receive

通过send和receive可以将消息发送到指定队列。

时间: 2024-10-10 15:05:09

RabbitMQ安装配置和基于EasyNetQ驱动的基础使用的相关文章

RabbitMQ安装配置

安装RabbitMQ windows下的安装是非常简单的,我们需要准备两个东西 erlang的环境  下载windows和与之对象的操作系统位数安装包 http://www.erlang.org/downloads RabbitMQ http://www.rabbitmq.com/download.html 下载完毕之后,先安装 erlang再安装 RabbitMQ 安装这后我们可以配置一下rabbitmq的环境变量 打开命令行运行rabbitmq-server 现在大功已经告成了,不过rabb

RabbitMQ安装配置使用指南

一.概述 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queuing Protocol)的开源实现.AMQP,即高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计.消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然.AMQP的主要特征是面向消息.队列.路由(包括点对点和发布/订阅).可靠性.安全. RabbitMQ是由RabbitMQ Technologies Ltd开发并且提供商业支持的.服务器端是用Er

erlang&RabbitMQ安装配置

Centos 6.8安装erlang&rabbitmq的方法 1.安装 erlang1.1 准备工作,先安装依赖库和应用工具yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel? rsync perl-net-snmp wx fop net-snmp unixODBC unixODBC-devel vim make lrzsz bc sysstat lsof wget xz 1.2 下载erlang

Windows 64位 RabbitMQ 安装配置

1:下载Erlang,地址:http://www.erlang.org/download/otp_win64_19.0.exe ,双击安装即可(首先装) 2:下载RabbitMQ,RabbitMQ 3.6.5下载 ,双击安装即可 启动报错 Applying plugin configuration to [email protected] failed. 这是因为RabbitMQ对大小写敏感,把计算机名称改为大写

阿里云服务器下安装配置 vsftpd —— 基于CentOS 6.3 【简洁版】

原文链接:http://www.tuicool.com/articles/nuiQBja 1.更新yum源 我是直接 yum update 更新的 2.安装vsftp 使用yum命令安装vsftpd #yum install vsftpd -y 3.添加ftp帐号和目录 先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下. 使用下面的命令创建帐户,该命令指定了/www/wwwroot为用户pwftp的家目录,您可以自己定义帐户名和目录: #u

RabbitMQ安装配置-01

安装依赖环境 首先要安装RabbitMQ,需要安装ncurses-devel和erlang [email protected]:~# cd /data/soft/ [email protected]:~#wget ftp://ftp.invisible-island.net/ncurses/ncurses.tar.gz [email protected]:~#wget http://erlang.org/download/otp_src_22.0.tar.gz #下载很慢 我这里存放到我的网盘下

基于EasyNetQ的RabbitMQ封装类

最近在捣鼓RabbitMQ,为了方便使用,自己基于EasyNetQ封装了一个类,现在贴出来还望各路大佬神明指点,共同学习. 1 /// <summary> 2 /// RabbitMQ客户端封装类,基于EasyNetQ,使用时需要从nuget安装EasyNetQ. 3 /// <para> 4 /// <example> 5 /// 使用方法: 6 /// <code> 7 /// using(var mq = new RabbitMqClient('rab

AMQP之RabbitMQ安装与配置

刚开始接触RabbitMQ,今天尝试安装,具体流程如下,参照了一些网上同行的经验,环境如下图: rabbitmq版本:3.1.5 下载地址:http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.5/rabbitmq-server-3.1.5.tar.gz 文件下载目录:/home/gao/server以下简称为当前目录 准备工作:安装依赖环境 yum install build-essential openssl openssl-devel

RabbitMQ_安装配置与管理

RabbitMQ 安装配置与管理 安装 安装erlang虚拟机 Rabbitmq基于erlang语言开发,所有需要安装erlang虚拟机 #wget  http://www.erlang.org/download/otp_src_R15B01.tar.gz #tar zxvf otp_src_R15B01.tar.gz && cd otp_src_R15B01 #./configure && make install 安装rabbitmq server #wget http