加载中
RabbitMQ——队列索引文件格式

简介 RabbitMQ的持久化包含两个部分:队列索引(queue index)和消息存储(message store)。 队列索引负责维护消息在队列中的位置信息,以及消息的状态(消息是否投递给消费者或被消费者确认)。...

2019/05/03 16:47
11
RabbitMQ——消息存储

【概述】 前一篇文章中提到了消息可存储在队列索引或消息存储中,对于消息存储的方式,整体框架大概如下图所示: rabbitmq启动后针对每个vhost会启动两个进程:msg_store_persistent和msg_s...

2019/05/28 21:32
7
RabbitMQ——镜像队列Master故障后的处理

默认情况下,镜像队列的master出现故障时,最老的mirror会被提升为新的master。如果新提升为master的这个mirror与原有的master并未完成数据的同步,那么就会出现数据的丢失,而实际应用中,出...

2019/06/13 21:04
9
RabbitMQ--索引重建

【背景】 在实际使用过程中,发现有时候rabbitmq启动后,很快就能提供服务(在指定端口上侦听,客户端能正常连接到rabbitmq);而有时候则需要过一段时间才能提供服务,尤其是启动前有许多持...

2019/06/19 20:57
7
RabbitMQ——队列消息数

背景 在实际使用过程,会遇到这么些情况: 生产者发送的消息数量与消费者接收的消息数量不一致。例如生产者向rabbitmq投递了100条消息,消费者只从队列中接收到了80条消息,并且当前队列中已...

2019/07/09 11:36
3
RabbitMQ——最大连接数

默认情况下,rabbitmq文件句柄数设置是1024。连接数最多为829,连接数的具体计算方式为: 连接数=(文件句柄数-100)*0.9,计算后的值取整再减2。 例如:(1024-100)*0.9=831.6,取整831再减...

2019/07/10 14:58
7
RabbitMQ——配置文件

3.7.0版本之前的配置文件采用经典格式,或者称之为erlang term的方式(下面统称为经典格式),其配置文件的后缀为".config",例如: [ {rabbit, [ {tcp_listeners, [5672]}, {connection_ma...

rabbitmq——索引文件的读写机制

【前言】 在前面的文章中,我们讲解了索引文件的格式,里面提到了针对消息主要有publish,delivery,ack三个操作,而索引文件中主要也就是存储了消息这三个操作对应的二进制数据。那么什么情...

2019/08/14 13:01
5
Rabbitmq——消息存储调度

【概述】 消息、队列有持久化与非持久化的属性,持久化的消息会在磁盘上存储,而非持久化的消息在内存中存储。然而消息并非固定按照持久化属性仅在磁盘或内存中存储。当内存占用达到一定水位...

2019/08/21 10:41
7
RabbitMQ——流控

【概述】 rabbitmq是采用erlang开发的,而erlang开发的程序其内部通常由成千上万个进程组成。每个进程都有自己的邮箱,进程与进程之间通过消息投递来进行通信(发送端将消息投递到接收端进程...

2019/08/27 09:46
11
RabbitMQ——调优参数

【前言】 前面几篇文章讲述了rabbitmq消息存储的相关原理,也提到了有些参数可以进行配置。这些配置参数的微调在不同的场景中会有不同的效果。本文对其中一些参数进行说明,同时以实测数据结...

2019/09/10 15:33
5
RabbitMQ——镜像队列问题(一)

最近在使用镜像队列的过程中遇到了一些坑,通过阅读相关源码,大量的测试,不敢说对其中的原理掌握得非常透彻, 但基本能分析定位问题的原因,并且能自圆其说。这里整理总结下, 方便后续的回...

2019/10/23 23:48
7
RabbitMQ——内存调优(一)

【前言】 在《RabbitMQ——调优参数》一文中提到了rabbitmq相关的参数,对相关参数进行调整后测试发现在队列无堆积的情况下, 生产消费速度有明显提升;而在队列消息堆积的情况下,生产消费速...

2019/12/09 00:02
8
RabbitMQ——内存调优(二)

在上一篇文章中简单介绍了erlang运行时系统中内存分配的相关概念。 那么在消息堆积的场景中,对这些参数调整,是怎样影响整体性能的呢? 要分析这个问题,首先我们得估算下在队列消息堆积的情...

2019/12/14 00:39
7
HDFS——editLog文件

【概述】 在HDFS中,namenode保存了整个HDFS的元数据信息,而这些数据最终会被持久化到fsimage文件和editLog文件。换而言之,namenode的元数据信息由fsimage和editlog组成。其中,fsimage存放...

03/28 22:47
135
Kafka——listeners

kafka中提供了listeners和advertised.listeners两个配置项,两个配置项的具体含义和作用是什么,有些什么区别,以及应该如何进行配置呢? 【概念理解】 要搞清楚这些问题,首先得搞清楚两个逻...

04/05 23:43
12
YARN——日志聚合

【简介】 在yarn架构中,application由一个个的container组成,每个container可运行在不同的nodemanager节点上,每个container的日志存储在container所运行的nodemanger节点上,这些日志会有...

04/14 00:47
36
RabbitMQ——镜像队列的数据流

【概述】 rabbitmq采用了镜像队列的方式实现队列的高可用,镜像队列的使用、配置、内部实现原理网上有很多文章都有介绍,自己很久之前也曾总结过相关内容。但回过头再来看镜像队列,仍然有新...

04/19 00:11
18
RabbitMQ——短连接惹的祸

【前言】 最近在生产环境出现了一个奇怪问题,并且该问题多次出现,问题排查过程中对一些线索大胆猜测其问题的原因,最终找了了问题的根因。这里进行总结,方便后续回顾。 【问题现象】 环境...

Hadoop——健康检测

【前言】 通常后端服务都会设计自身的健康检测逻辑。 所谓的健康检测,就是定期检测节点运行所必须的环境是否满足需求,如果不满足则拒绝提供服务。 HDFS和YARN中涉及的各个服务也不例外,基...

05/10 22:05
23

没有更多内容

加载失败,请刷新页面

返回顶部
顶部