RabbitMQ 是一款开源且比较流行的消息中间件。但用起来还是比较麻烦,有人封装了一层, 这就是 EasyNetQ 。

一、安装

1、安装 Erlang: http://www.erlang.org/download.html

2、安装 RabbitMQ server : http://www.rabbitmq.com/download.html

3、安装 RabbitMQ management API tool : http://www.rabbitmq.com/management.html (web 页面管理工具)

  • 找到 rabbitmq-plugins 所在文件夹(一般在 sbin 文件夹下)
  • 在文件夹下运行 cmd
  • 在 cmd 中运行 rabbitmq-plugins enable rabbitmq_management

4、 重启 RabbitMq 服务

二、集群 (Cluster)

此处指的是负载均衡集群:将任务分配给有资源的服务器处理。

此处有三种模型

模式  1、最基础的集群(无需负载均衡功能)

var bus = RabbitHutch.CreateBus("host=myhost.svj.com ,sechost.svj.com");// 创建连接时,指定多主机地址完成集群

在连接的主机域名处,添加多个域名,域名之间以逗号分隔, 当连接首个域名失败,则会尝试连接后面的域名,若失败继续向后连接,依次寻找可连接主机。

模式 2、随机选择域名 (具备基础的负载均衡功能, 适用于多个服务调用 RabbitMQ 服务)

var bus = RabbitHutch.CreateBus("host=myfirsthost,mysecondhost", x => x.Register<IClusterHostSelectionStrategy<ConnectionFactoryInfo>, RandomClusterHostSelectionStrategy<ConnectionFactoryInfo>>());

模式 3、使用专业的负载均衡器

三、镜像队列(Mirror Queue)

使用镜像队列的前提条件是完成了集群。

将 queue 镜像到集群中的其他节点的队列上, 防止单点队列失效,以及 Message 丢失 。

镜像队列的设置可以在  web 页面中设置

Policies > Add / update a policy. 完成,队列的更新。

如果需要查看其节点以及镜像 ,可以点击此处查看 https://www.rabbitmq.com/ha.html#how-to-check-i-a-queue-is-mirrored

注意: 使用了队列镜像后, 在发布确认时,必须所有镜像队列都同步了消息,才能返回 isComplete 为 true 算是发布完成

以上皆为参考 https://github.com/EasyNetQ/EasyNetQ/wiki/Quick-Start

消息队列的使用 RabbitMQ的更多相关文章

  1. 消息队列介绍、RabbitMQ&Redis的重点介绍与简单应用

    消息队列介绍.RabbitMQ&Redis的重点介绍与简单应用 消息队列介绍.RabbitMQ.Redis 一.什么是消息队列 这个概念我们百度Google能查到一大堆文章,所以我就通俗的讲下 ...

  2. 进击的Python【第十一章】:消息队列介绍、RabbitMQ&Redis的重点介绍与简单应用

    消息队列介绍.RabbitMQ.Redis 一.什么是消息队列 这个概念我们百度Google能查到一大堆文章,所以我就通俗的讲下消息队列的基本思路. 还记得原来写过Queue的文章,不管是线程queu ...

  3. rabbitMQ学习1:消息队列介绍与rabbitmq安装使用

    1. 什么是消息队列 生活里的消息队列,如同邮局的邮箱, 如果没邮箱的话, 邮件必须找到邮件那个人,递给他,才玩完成,那这个任务会处理的很麻烦,很慢,效率很低 但是如果有了邮箱, 邮件直接丢给邮箱,用 ...

  4. 消息队列1:RabbitMQ解析并基于Springboot实战

    RabbitMQ简介 AMQP:Advanced Message Queue,高级消息队列协议.它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产 ...

  5. 消息队列系列:Rabbitmq Trace 日志的使用

    一.什么是Trace       Trace是Rabbitmq用于记录每一次发送的消息,方便使用Rabbitmq的开发者调试.排错.可通过插件形式       提供可视化界面   二.Trace实现概 ...

  6. 为什么使用消息队列,为什么使用RabbitMQ、springAMQP

    1.为什么使用消息队列? 2.为什么使用RabbbitMQ? 3.为什么使用spring AMQP?

  7. 消息队列的使用 RabbitMQ (二): Windows 环境下集群的实现

    一.RabbitMQ 集群的基本概念 一个 RabbitMQ 中间件(broker) 由一个或多个 erlang 节点组成,节点之间共享 用户名.虚拟目录.队列消息.运行参数 等, 这个 节点的集合被 ...

  8. Net分布式系统之四:RabbitMQ消息队列应用

    消息通信组件Net分布式系统的核心中间件之一,应用与系统高并发,各个组件之间解耦的依赖的场景.本框架采用消息队列中间件主要应用于两方面:一是解决部分高并发的业务处理:二是通过消息队列传输系统日志.目前 ...

  9. python【第十一篇】消息队列RabbitMQ、缓存数据库Redis

    大纲 1.RabbitMQ 2.Redis 1.RabbitMQ消息队列 1.1 RabbitMQ简介 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议 ...

随机推荐

  1. java学习笔记(详细)

    java平台 1.J2SE java开发平台标准版 2.J2EE java开发平台企业版 java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序.不同系统上要安装对应的虚 ...

  2. Web/app端自动化测试对比

    Web/app端自动化测试 做了一段时间的Android自动化测试,对比个人之前做的web端自动化测试,有一些感想.(由于个人接触的时间也不是太久,很多东西理解也并不深刻,先写下菜鸟时期的感想.) 区 ...

  3. Day5模块-shutil模块

    参考博客:http://www.cnblogs.com/wupeiqi/articles/4963027.html shutil模块是高级的文件.文件夹.压缩处理的模块.比如文件的copy.压缩等. ...

  4. 【前端】Vue2全家桶案例《看漫画》之五、引入axios

    转载请注明出处:http://www.cnblogs.com/shamoyuu/p/vue_vux_app_5.html 项目github地址:https://github.com/shamoyuu/ ...

  5. 搜索引擎case︱从搜索序列文本看高端商务车︱统计之都

    朱雪宁(北京大学光华管理学院)               王汉生(北京大学光华管理学院) 摘要:本文对100万搜索引擎用户的13亿搜索序列文本进行探索分析,对高端车用户以及商学院人群做了描述对比,并 ...

  6. jlink烧写Nor Flash时出错正确解决方法汇总:PC of target system has unexpected value after programming

    成都国嵌的课程:国嵌体验入门班-2-1(开发板系统安装-Jlink方式).rar毒害了不少人,那种直接烧写nor flash,不进行任何配置的方法,能够成功纯属偶然,他自己在视频中烧写时也出现了两次错 ...

  7. Java Web项目(Extjs)报错四

    1.Java Web项目(Extjs)报错四 具体报错如下: usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ...

  8. Invalid property 'driver_class' of bean class

    1.错误描述 INFO:2015-05-01 13:06:07[localhost-startStop-1] - Initializing c3p0-0.9.2.1 [built 20-March-2 ...

  9. Caused by: Unable to locate parent package [json-default] for [class com.you.user.action.StudentActi

    1.错误描述 信息: Choosing bean (struts) for (com.opensymphony.xwork2.util.TextParser) 2014-7-13 1:52:04 or ...

  10. HTML5可以省略结束标记的元素

    HTML5可以省略结束标记的元素 1.dd 2.dt 3.li 4.p 5.optgroup 6.option 7.rt 8.rp 9.thread 10.tfoot 11.tr 12.td 13.t ...