排序
27.RocketMQ之消费者启动源码
消费者启动 消费者启动示例代码 package com.itheima.mq.rocketmq.base.producer; import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer; import org.apache.rocketmq.client....
【Spring Cloud Alibaba】Linux安装RocketMQ以及RocketMQ Dashboard可视化工具
环境准备:Linux安装Java环境(OracleJDK) 在当今分布式架构的开发中,消息队列成为了一种常见的解决方案。RocketMQ是阿里巴巴开源的分布式消息中间件,具有高吞吐量、高可用性和强大的扩展性...
Redis系列14:使用List实现消息队列
Redis系列1:深刻理解高性能Redis的本质Redis系列2:数据持久化提高可用性Redis系列3:高可用之主从架构Redis系列4:高可用之Sentinel(哨兵模式)Redis系列5:深入分析Cluster 集群模式 追求性...
34.RocketMQ之Broker端消息存储流程详解
Broker消息存储概要设计 RocketMQ主要存储的文件包括Commitlog文件,ConsumeQueue文件,IndexFile文件。 RMQ把所有主题的消息存储在同一个文件中,确保消息发送时顺序写文件。 为了提高消费效率...
解读 RocketMQ 5.0 全新的高可用设计
作者:斜阳 高可用架构演进背景 在分布式系统中不可避免的会遇到网络故障,机器宕机,磁盘损坏等问题,为了向用户不中断且正确的提供服务,要求系统有一定的冗余与容错能力。RocketMQ 在日志,...
RocketMQ – producer获取Namesrv地址
抛出几个问题。 第一个是producer是怎么在开始的时候获取namesrv的地址; 第二个是producer获取namesrv的方式有几种; 第三个是produce是怎么刷新namesrv地址的; producer获取namesrv地址 在开...
rocketmq-console基本使用
rocketmq-console基本使用 作用:rocketmq-console是rocketmq的一款可视化工具,提供了mq的使用详情等功能。 一、安装部署 下载rocketmq组件 rocketmq:下载地址、github地址 下载地址如下图所...
【RocketMQ】消息的发送
RocketMQ是通过DefaultMQProducer进行消息发送的,它实现了MQProducer接口,MQProducer接口中定义了消息发送的方法,方法主要分为三大类: send同步进行消息发送,向Broker发送消息之后等待响应...
MQ系列13:消息大量堆积如何为解决
MQ系列1:消息中间件执行原理MQ系列2:消息中间件的技术选型MQ系列3:RocketMQ 架构分析MQ系列4:NameServer 原理解析MQ系列5:RocketMQ消息的发送模式MQ系列6:消息的消费MQ系列7:消息通信,...
34.RocketMQ之Broker端消息存储文件详解
Broker端文件详解 dubbo的核心是spi,看懂了spi那么dubbo基本上也懂了。对于rmq来说,它的核心是broker,而broker的核心是commitlog、consumequeue、indexfile,而这些文件对应的最终都是Mapped...
18.RocketMQ中消息重复的场景和幂等处理
消息重复的场景 发送消息异常,重试发送导致消息重复★ 当一条消息已被成功发送到服务端并完成持久化。此时出现网络闪断或者客户端宕机,导致服务端对生产者的确认应答失败。生产者发送消息到mq...
RocketMQ4源码(一)NameServer
前言 本章基于rocketmq4.6.0分析nameserver的实现。 nameserver的基础概念不再赘述,可以参考官网。 本章将分析以下内容: 借nameserver,分析rocketmq-remoting通讯层通用模块 nameserver的kv...
28.RocketMQ之消费者的负载均衡源码
消费者负载均衡流程 当一个业务系统部署多台机器时,每台机器都启动了一个Consumer,并且这些Consumer都在同一个ConsumerGroup也就是在同1个消费组中。此时一个消费组中多个Consumer消费一个Top...
【Spring Cloud Alibaba】RocketMQ的基础使用,如何发送消息和消费消息
在现代分布式架构的开发中,消息队列扮演着至关重要的角色,用于解耦系统组件、保障可靠性以及实现异步通信。RocketMQ作为一款开源的分布式消息中间件,凭借其高性能、高可用性和良好的扩展性,...
RocketMQ源码-从4.x到5.x
前言 RocketMQ目前主要分为4.x和5.x版本,本文基于时间线分析一下每个小版本新增的feature,主要目的: 1)对于RocketMQ的发展有个整体的认知,方便之后源码学习; 2)选个合适的版本进行源码学...
35.RocketMQ之Broker如何实现磁盘文件高性能读写
Broker读写磁盘文件的核心技术:mmap Broker中大量的使用mmap技术去实现CommitLog这种大磁盘文件的高性能读写优化的。 通过之前的学习,我们知道了一点,就是Broker对磁盘文件的写入主要是借助直...
19.RocketMQ之消息丢失的场景以及解决方案
如果我们的项目中引入了MQ,势必要面对的一个问题,就是消息丢失问题,今天我们就来聊聊消息是怎么丢失的。 现在假设我们的业务是这样的,用户通过订单系统下了一个订单,订单系统完成支付扣减...
RocketMQ 5.0 无状态实时性消费详解
作者:绍舒 背景 RocketMQ 5.0 版本引入了 Proxy 模块、无状态 pop 消费机制和 gRPC 协议等创新功能,同时还推出了一种全新的客户端类型:SimpleConsumer。 SimpleConsumer 客户端采用了无状态...
29.RocketMQ之消费者负载均衡策略
负载均衡策略概述 消费者在消费消息的时候,需要知道从Broker的哪一个消息队列中去获取消息。所以,在消费者端必须要做负载均衡,即Broker端中多个消费队列分配给同一个消费者组中的哪些消费者...
RocketMQ 5.1.0 源码详解 | Producer 发送流程
初始化DefaultMQProducer实例 详细内容见文章 RocketMQ 5.1.0 源码详解 | Producer 启动流程 第一部分 发送流程 DefaultMQProducer#send 只需要执行以下代码即可开始消息的发送流程 try { Messa...