zoukankan      html  css  js  c++  java
  • 消息队列的使用 RabbitMQ(一): 安装与总体介绍

    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 

  • 相关阅读:
    linux内存管理之数据结构必备
    Script快速入门与查表
    Bash编程linux诸多熟记命令
    NandFlash/NorFlash源码模型和驱动编写方法
    linux内存管理之uboot第一步
    《Magus Night》
    《P2447 [SDOI2010]外星千足虫》
    DFS 树的理解
    《2021CCPC桂林》
    《GRAPH》
  • 原文地址:https://www.cnblogs.com/yaolin1228/p/8610471.html
Copyright © 2011-2022 走看看