RabbitMQ入门3—virtual host参数详解

在 RabbitMQ 中,创建 Virtual Host 时会涉及到一些参数配置,比如 tagsDefault Queue Type。下面是对这两个参数的详细解释:

1. Tags

Tags 是 Virtual Host 的标记,用来为 Virtual Host 添加元数据,帮助你管理和组织不同的 Virtual Host。它们通常用于区分不同类型的 Virtual Host,或赋予 Virtual Host 特定的功能属性。

在 RabbitMQ 中,tags 最常用于用户和 Virtual Host 的管理。例如,在用户管理中,可以为用户分配不同的 tags(如管理员标签 administrator),用以控制不同权限。同样,对于 Virtual Host,tags 可以用于对虚拟主机的分组或分类,但这些标签更多是为了管理方便,RabbitMQ 本身并不直接对 Virtual Host 的 tags 做任何行为上的区分。

2. Default Queue Type

Default Queue Type 指定了在这个 Virtual Host 中创建队列时的默认队列类型。RabbitMQ 支持多种类型的队列,每种队列类型都有不同的特性,适合不同的使用场景。

默认情况下,RabbitMQ 提供四种队列类型:

  1. Classic(默认)

    • 这是最常见的队列类型,使用传统的基于磁盘和内存的存储机制。
    • 适合大多数普通应用,支持持久化、镜像等功能。
  2. Quorum

    • 是为支持高可用性和数据一致性设计的队列类型。使用 Raft 算法确保在多个节点间的数据一致性。
    • 适合需要高可用性和数据一致性的场景,但对资源要求更高。
  3. Stream(从 3.9 版起引入):

    • 是为了支持高吞吐量、低延迟的场景而设计的队列类型,特别适合实时流处理。
    • 允许从队列中的任意位置读取消息,具有消息存储时间长、顺序读取等优势。
  4. Default(默认为 Classic):

    • 当你不明确指定队列类型时,RabbitMQ 将使用此类型作为默认值。通常是 Classic,但你可以通过 Virtual Host 级别的设置,将默认队列类型改为其他类型,如 QuorumStream

为什么要设置 Default Queue Type?

默认队列类型的设置帮助简化队列创建的流程,确保队列在没有明确指定类型时仍能符合系统需求。通过在 Virtual Host 上设置默认队列类型,你可以确保所有使用该 Virtual Host 的队列遵循一致的队列类型标准。

例如,如果你希望在某个 Virtual Host 中,所有队列都默认使用 Quorum 以确保数据高可用性,那么可以将 Default Queue Type 设置为 quorum,这样在队列创建时就不需要每次指定类型。

如何设置

  1. 通过 RabbitMQ 管理界面
    • 在 RabbitMQ 管理界面的 Virtual Host 部分,你可以看到 Default Queue Type 的选项,并选择适当的队列类型(classic, quorum, stream 等)。
  2. 通过 API 或 CLI: 你也可以使用 RabbitMQ 的 API 或 CLI 工具来管理 Virtual Host,包括设置默认队列类型。

示例

# 使用 RabbitMQ 命令行工具创建一个 virtual host 并设置默认队列类型 
rabbitmqctl add_vhost my_vhost --default-queue-type quorum

这个命令会创建一个名为 my_vhost 的 Virtual Host,并将其默认的队列类型设置为 quorum

总结

  • Tags:是一种用于组织和管理 Virtual Host 的元数据,方便进行分类或标记。
  • Default Queue Type:用于指定在这个 Virtual Host 中创建队列时的默认类型,确保队列在没有指定类型的情况下仍符合预期的行为。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/55557.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

牛客周赛 Round 62(期望、DFS、主席树、DP、逆推DP)

文章目录 牛客周赛 Round 62(期望、DFS、主席树、DP、逆推DP)A. 小红的字符移动B. 小红的数轴移动C. 小红的圆移动D. 小红的树上移动 (期望、DFS)E. F. 小红的中位数查询(主席树)G. 小红的数轴移动(二)&…

Windows下Jenkins控制台中文乱码

问题描述 问题情况如下图: 环境信息 Windows 11 家庭中文版java 21.0.4 2024-07-16 LTSJenkins 2.452.3 解决方法 增加系统JAVA_TOOL_OPTIONS,并设置值为-Dfile.encodingGBK。 打开设置方法:桌面上右键点击“此电脑”图标,选…

mysql设置表的某一个字段每天定时清零

推荐学习文档 golang应用级os框架,欢迎stargolang应用级os框架使用案例,欢迎star案例:基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识,这里有免费的golang学习笔…

算法笔记(十三)——BFS 解决最短路问题

文章目录 迷宫中离入口最近的出口最小基因变化单词接龙为高尔夫比赛砍树 BFS 解决最短路问题 BFS(广度优先搜索) 是解决最短路径问题的一种常见算法。在这种情况下,我们通常使用BFS来查找从一个起始点到目标点的最短路径。 迷宫中离入口最近的出口 题目:…

Android SystemUI组件(11)SystemUIVisibility解读

该系列文章总纲链接:专题分纲目录 Android SystemUI组件 本章关键点总结 & 说明: 说明:本章节持续迭代之前章节思维导图,主要关注左侧最上方SystemUiVisibility解读部分即可。 本章节主要讲解SystemUiVisibility的概念及其相…

数据库(MySQL):使用命令从零开始在Navicat创建一个数据库及其数据表(一).创建基础表

一. 使用工具和命令 1.1 使用的工具 Navicat Premium 17 :“Navicat”是一套可创建多个连接的数据库管理工具。 MySQL版本8.0.39 。 1.2 使用的命令 Navicat中使用的命令 命令命令解释SHOW DATABASES;展示所有的数据库CREATE DATABASE 数据库名称; 创…

thinkphp 学习记录

1、PHP配置 (点开链接后,往下拉,找到PHP8.2.2版本,下载的是ZIP格式,解压即用) PHP For Windows: Binaries and sources Releases (这里是下载地址) 我解压的地址是:D:\…

1、如何查看电脑已经连接上的wifi的密码?

在电脑桌面右下角的如下位置:双击打开查看当前连接上的wifi的名字:ZTE-kfdGYX-5G 按一下键盘上的win R 键, 输入【cmd】 然后,按一下【回车】。 输入netsh wlan show profile ”wifi名称” keyclear : 输入完成后,按一下回车&…

Codeforces Round 316 (Div. 2) D题 Tree Requests(二分,dfs,在线,前缀异或)

题目链接 Codeforces Round 316 (Div. 2) D题 Tree Requests 思路 将 26 26 26个字母全部当作一个二进制数。 将每个深度的结点按照dfs序放到一个vector里,同时记录每个vector对应的前缀异或。 对于每一个询问x,只需在给定深度里找到 ≥ \ge ≥L[x]…

中断系统的原理

一、介绍 中断是为使单片机具有对外部或内部随机发生的事件实时处理而设置的。中断是指‌CPU在正常运行程序时,由于内部或外部事件的发生,导致CPU中断当前运行的程序,转而去执行其他程序的过程。‌ 中断可以是硬件产生的,也可以是…

安全运营中心 (SOC) 团队对其安全工具感到失望

Vectra AI 表示,安全运营中心 (SOC) 从业人员认为,由于太多孤立的工具和缺乏准确的攻击信号,他们在检测和确定真实威胁的优先级方面正在失败。 人们对供应商的不信任感日益加深,认为供应商的工具在发现真正的攻击方面起的阻碍作用…

OpenCV视频I/O(16)视频写入类VideoWriter之获取当前使用的视频编解码器后端的名称函数getBackendName()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 getBackendName() 是一个成员函数,用于获取当前使用的视频编解码器后端的名称。这个函数可以帮助开发者了解正在使用的编解码器是什么…

金纳米星“融入”水凝胶,原位生长的奥秘,应用前景的探索

大家好!今天来了解一项在三维水凝胶表面生长金纳米星的研究——《Growing Gold Nanostars on 3D Hydrogel Surfaces》发表于《Chemistry of Materials》。水凝胶在生物医学等诸多领域有着重要应用,而金纳米星具有独特的光学性质。这项研究通过原位合成的…

【Linux】线程与线程安全知识总结

向外张望的人在做梦, 向内审视的人才是清醒的。 --- 荣格 --- 我最近复习了线程安全这部分知识,将不明白的问题总结出来,并通过AI进行问答帮助我进行学习巩固。本人能力有限 ,可能有些内容不准确,望各位大佬海涵&am…

Leetcode 3312. Sorted GCD Pair Queries

Leetcode 3312. Sorted GCD Pair Queries 1. 解题思路2. 代码实现 题目链接:3312. Sorted GCD Pair Queries 1. 解题思路 这一题的话坦率来说没有搞定,后来是找的大佬的代码抄了一下…… 整体来说这道题思路上还是比较暴力的,还是一个二重…

【前端开发入门】css快速入门

目录 引言一、css盒模型1. 盒模型概念2. 盒模型案例 二、css编写1. html文件内部编写1.1 标签style属性编写1.2 css选择器关联1.2.1 id选择器1.2.2 class选择器1.2.3 标签选择器1.2.4 css选择器作用域1.2.5 其他选择器1.2.6 各css选择器优先级 2. 单独维护css文件2.1 创建css文…

伙伴算法的概念

伙伴算法 (Buddy System) 是一种内存分配算法,用于动态分配和释放内存块。它通过将内存空间划分成大小为 2 的幂次的块,并采用特殊的合并策略来提高内存利用率和减少内存碎片。 核心思想: 伙伴算法的核心思想是将内存划分为大小为 2 k 2^k 2k 字节的块…

macOS .bash_profile配置文件优化记录

文章目录 说明原文件内容优化思路优化操作测试验证1. 验证JAVA_HOME2. 验证MAVEN_HOME3. 验证MONGODB_HOME4. 验证CLASSPATH5. 验证PATH 说明 展示的代码中,关于具体的文件路径位置,请灵活修改为自己的真实文件目录! 原文件内容 从macOS C…

HDLBits中文版,标准参考答案 | 3.1.4 Karnaugh Map to Circuit | 卡诺图到电路

关注 望森FPGA 查看更多FPGA资讯 这是望森的第 11 期分享 作者 | 望森 来源 | 望森FPGA 目录 1 3 变量 2 4 变量 3 4 变量 4 4 变量 5 最小 SOP 和 POS 6 卡诺图 7 卡诺图 8 使用多路复用器实现的卡诺图 本文中的代码都能够正常运行,请放心食用&#x1f…

CSP-S复赛真题解析

2023年CSP-S复赛真题 密码锁 题意&#xff1a; 分析&#xff1a; 代码&#xff1a; 正解代码 #include<bits/stdc.h>using namespace std;int n; int va[10][10]; int vb[10]; int sum;int check() {for(int i1;i<n;i){vector<int > v;for(int j1;j<5;j…