搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
码创造者
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
【金三银四】Java虚拟机面试题(2021最新版)_你听过直接内存吗?
2
图片二值化 opencv实现 代码及分析_opencv的二值化的源码
3
使用adb工具修改android分辨率_adb修改分辨率
4
linux下可以运行甜糖,关于群晖部署甜糖,聊聊我走过的那些坑
5
Android 14 transtion 动画流程_ontransitionready
6
hive外部表改为内部表_hive内部表&外部表介绍
7
#include<opencv2/core/core.hpp>头文件的用途_opencv2 cvpoint头文件
8
非 NVIDIA GPU 的使用率及 性能测试_rocm-smi常用命令
9
2023 IoTDB 用户大会:天谋科技 Christofer Dutz《如何用Apache PLC4X构建极简工业数据采集》..._plc4x api
10
分布式搜索引擎之Elasticsearch
当前位置:
article
> 正文
RabbitMQ面试题(四)_rabbitmqdr额broker
作者:码创造者 | 2024-08-12 22:54:26
赞
踩
rabbitmqdr额broker
RabbitMQ中的broker 是指什么?cluster 又是指什么?
答:broker是指一个或多个erlang node的逻辑分组,且node上运行着RabbitMQ应用程序。cluster是在broker的基础之上,增加了node之间共享元数据的约束。
什么是元数据?元数据分为哪些类型?包括哪些内容?与cluster相关的元数据有哪些?元数据是如何保存的?元数据在cluster中是如何分布的?
答:在非cluster模式下,元数据主要分为Queue元数据(queue名字和属性等)、Exchange元数据(exchange名字、类型和属性等)、Binding元数据(存放路由关系的查找表)、Vhost元数据(vhost 范围内针对前三者的名字空间约束和安全属性设置)。在cluster模式下,还包括cluster中node位置信息和node关系信息。元数据按照erlang node的类型确定是仅保存于RAM中,还是同时保存在RAM和disk上。元数据在cluster中是全node分布的。
RabbitMQ节点的类型有哪些?
答:
磁盘节点(disk node):消息会存储到内存和磁盘。
内存节点(RAM node):消息都存储在内存中,重启服务器消息丢失,性能高于磁盘类型。
RAM node(节点) 和disk node(节点)的区别?
答:RAM类型的节点只会在磁盘里存放cluster中使用的disk node的地址这样的元数据,而其他的元数据则会存放在内存里,而disk类型的节点会把相关的元数据在磁盘和内存都存储。所以才会要求RabbitMQ cluster中至少存在一个disk node。
在单node系统和多node构成的cluster系统中声明queue、exchange ,以及进行binding会有什么不同?
答:在单node系统上声明queue时,只要该node上的相关元数据有了变更,就会得到Queue.Declare-ok回应。而在cluster上声明queue,要求全部node根据自己的类型,只变更内存上的元数据,还是需要更新内存和磁盘上的元数据,全部node更新完后,才会得到Queue.Declare-ok回应。
客户端连接到cluster中的任意node上是否都能正常工作?
答:可以。
RabbitMQ集群有什么用?
答:当某个RabbitMQ服务节点出现了问题,整个RabbitMQ还可以提供正常服务,实现了高可用。使用了集群,可以承载更多的消息量,实现了高容量。
RabbitMQ集群中每个节点是其余节点的完整拷贝吗?
答:不是,首先从存储空间考虑,假如每个节点都拥有所有队列的完全拷贝,这样新添加节点不仅没有新添加存储空间,反而添加了更多的冗余数据,其次就是出于性能的考虑,假如每条消息都需要完整拷贝到每一个集群节点,那新添加节点并没有提升解决消息的能力,最多是保持和单节点相同的性能甚至是更糟。
RabbitMQ集群中唯一一个磁盘节点崩溃了会发生什么情况?
答:唯一磁盘节点崩溃了,集群是可以保持运行的,但你不能更改任何东西,如不能创立队列,不能创立交换器,不能创立绑定,不能增加客户,不能更改权限,不能增加和删除集群节点。
RabbitMQ对集群节点中止顺序有要求吗?
答:RabbitMQ对集群的中止要求先关闭内存节点,最后再关闭磁盘节点,否则可能会造成消息丢失。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/码创造者/article/detail/971977
推荐阅读
article
Docker
部署常用
中间
件(
redis
,
rabbitMQ
,
mysql8
,
es
,
kibana
,ngi...
设置elasticsearch的地址,因为
kibana
已经与elasticsearch在一个网络,因此可以用容器名直接访...
赞
踩
article
CAP
+
RabbitMQ
...
CAP
和
RabbitMQ
通常是结合在一起使用的,以实现微服务间的通信。
CAP
作为一个EventBus(事件总线),允许不...
赞
踩
article
RabbitMQ
docker
安装...
【代码】
RabbitMQ
docker
安装。
RabbitMQ
docker
安装 后台配置...
赞
踩
article
RabbitMQ
——
RabbitMQ
搭建及问题_
erlang
>=
20.3
被
rabbitmq
-...
单点准备版本确定官方给出的
RabbitMQ
和Erlang对应版本
RabbitMQ
版本Erlang最低版本Erlang最高...
赞
踩
article
安装rabbitMQ 依赖检测失败:
erlang
>= 23.2 被
rabbitmq
-serve...
[root@localhost ~]# rpm -Uvh
rabbitmq
-
server
-
3.8
.
16
-1.
el7
.no...
赞
踩
article
centos7
安装
rabbitmq
3.7.17_
socat
被
rabbitmq
-
server
-3....
先用centos6.5,安装了很久还是失败了,还是换成了
centos7
才成功,特意记录下。中间,启动不了,找了很久的BU...
赞
踩
article
初次在
Linux
CentOS
上安装
RabbitMQ
_错误
:
依赖检测失败
:
socat
被 rabb...
这篇博客详细介绍了在
Linux
CentOS
系统上安装
RabbitMQ
的步骤,包括下载Erlang、
RabbitMQ
和s...
赞
踩
article
IDEA Spring Boot RabbitMQ
pom
.
xml
:
spring
-
boot
-star...
pom
.
xml
:
spring
-
boot
-
starter
-
amqp
加载失败问题
spring
-
boot
-
starter
-a...
赞
踩
article
已经安装了
>
erlang>高版本,安装
>
rabbitmq>还是报错_
>
erlang>
>
=
23.2
>
is> ne...
error: Failed dependencies:
>
erlang>
>
=
19.3
>
is>
>
needed> by rabb...
赞
踩
article
rabbitmq
java
配置
_
RabbitMQ
安装
配置
以及
java
的连接
配置
demo
-Go语言中...
一、在linux环境下安装1、安装Erlang环境(
RabbitMQ
需要Erlang环境支持)cd/usr/local/...
赞
踩
article
RabbitMQ依赖
erlang
需要:
erlang
>=
1
9.3的解决方法_
erlang
>= ...
完美有效解决的使用,如下命令安装:rpm -ivh --nodeps
rabbitmq
-
server
-
3.7
.7-
1
.e...
赞
踩
article
RabbitMQ
安装及基本设置_错误
:
依赖检测失败
:
socat
被
rabbitmq
-
server
...
title
:
RabbitMQ
安装及基本设置date
:
20
19
-09-01 10
:
27
:
36summary
:
Rabb...
赞
踩
article
Centos7
安装Rabbitmq_
socat
被
rabbitmq
-
server
-3.6.10-1...
一、下载安装包 RabbitMq需要erlang配合,所以需要安装Rabbitmq-
server
和erlangwget ...
赞
踩
article
RabbitMQ
------
安装
RabbitMQ
以及开启
web
管理页面(二)_
rabbitmq
打开网...
1.下载
安装
前提,有erlang语言的环境。2.将erlang
安装
包、以及rabbitMQ
安装
包上传至linux
服务
器,...
赞
踩
article
Centos7
安装/卸载
RabbitMQ
_no match for argument: rabbit...
本文记录了如何在CentOS7上正确卸载和安装
RabbitMQ
及其依赖Erlang的过程。强调了
RabbitMQ
与Erl...
赞
踩
article
Rabbitmq
java
client
编译
_
rabbitmq
client
编译
运行...
Rabbitmq
java
client
编译
前言项目中用到了
rabbitmq
用来做异步任务队列,遇到了一些问题,决定翻阅...
赞
踩
article
rabbitmq
安装
问题
出错
缺少
ssl等
问题
_
安装
rabbitmq
提示
缺少
...
问题
解决相关博客http://www.enoch.site/2018/05/06/LinuxRabbitMQ/_
安装
ra...
赞
踩
article
RabbitMq
安装
中
遇到
的坑...
安装
环境是win10 64位。rabbitMq版本是3.7.6。1.rabbitmq需要
安装
erlang作为运行环境。先...
赞
踩
article
MQ之
RabbitMq
启动报错,卸载
RabbitMq
低版本和升级版本号记录_
no
match
for
...
安装的下面
RabbitMq
版本报错:wget http://www.
rabbitmq
.com/releases/rabb...
赞
踩
article
基于
AMQP
的
RabbitMQ
整合
SpringBoot
_
amqp
-
client
rabbitmq
版...
1.
AMQP
(Advanced Message Queue Protocol)
AMQP
(Advanced Messag...
赞
踩
相关标签
docker
中间件
redis
rabbitmq
cap
分布式
c#
linux
消息队列
spring-boot-starter-amqp 加载失败问题
erlang
rabbitmq java 配置
RabbitMQ