消息队列

我的 Kafka 旅程 - Consumer

Kafka Consumer,消费者消费流程,配置介绍,offset的使用,消费者组,消费者组内再平衡,再平衡策略,提高消费者端吞吐量。 ... »

Sol-wang

我的 Kafka 旅程 - 文件存储机制

Kafka Partition中的文件存储机制,数据写入方式,数据查询方式,高效读写数据的原因,稀疏索引,数据顺序写入磁盘,零拷贝技术,数据文件的清理方式及配置。 ... »

Sol-wang

我的 Kafka 旅程 - broker

kafka broker,数据分区,kafka broker 应答机制,leader与副本数据同步,数据不重复,数据防丢失,数据按顺序,数据幂等性,partition 分区自动平衡,broker节点管理。 ... »

Sol-wang

拆解一下任务队列、消息队列、任务调度系统

最近调研了下任务调度系统中间件,包括xxl-job、elastic-job等,发现跟任务队列有一些类似的能力,比如通过API(事件)触发任务执行。 随即想到,能否用任务调度系统覆盖任务队列的场景呢? 另外,一直以来,很多同学也经常会产生困惑,任务队列和消息队列究竟有什么区别? 因此,本文通过多个维度 ... »

消息队列MQ核心原理全面总结(11大必会原理)

消息队列已经逐渐成为分布式应用场景、内部通信、以及秒杀等高并发业务场景的核心手段,它具有低耦合、可靠投递、广播、流量控制、最终一致性 等一系列功能。 无论是 RabbitMQ、RocketMQ、ActiveMQ、Kafka还是其它等,都有的一些基本原理、术语、机制等,总结分享出来,希望大家在使用消息 ... »

go+redis实现消息队列发布与订阅的详细过程

在做项目过程中,实现websocket得时候,不知道哪里写的不太合适,客户端消息收到一定程度,剩下的消息收不到,修改了缓冲区大小,还是没有解决问题,后面因为项目结束期比较紧张,没有时间调试消息的时候,改用了redis队列去做了消息得暂存,客户端轮询去拿对应的消息。 1.生产者随机发布消息,用rpu »

MQ系列3:RocketMQ 架构分析

MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 1 背景 我们前面两篇对主流消息队列的基本构成和技术选型做了详细的分析。从本篇开始,我们会专注当下主流MQ之一的RocketMQ。 从他的如下的几个方面去讨论: 基础能力(如 组织构成、消息发送、消息存储(持久化)、消息通信、消息消费 ... »

一个非常简单用.NET操作RabbitMQ的方法

RabbitMQ作为一款主流的消息队列工具早已广受欢迎。相比于其它的MQ工具,RabbitMQ支持的语言更多、功能更完善。 本文提供一种市面上最/极简单的使用RabbitMQ的方式(支持.NET/.NET Framework/.NET Core),只需要会调用以下三个方法,你就几乎可以掌握整个Rab ... »

digital-college

Redis 定长队列的探索和实践

vivo 互联网服务器团队 - Wang Zhi 一、业务背景 从技术的角度来说,技术方案的选型都是受限于实际的业务场景,都以解决实际业务场景为目标。 在我们的实际业务场景中,需要以游戏的维度收集和上报行为数据,考虑数据的量级,执行尽最大努力交付且允许数据的部分丢弃。 数据上报支持游戏的维度的批量上 ... »

vivotech

从RabbitMQ平滑迁移到RocketMQ技术实战

作者:vivo 互联网中间件团队- Liu Runyun 大量业务使用消息中间件进行系统间的解耦、异步化、削峰填谷设计实现。公司内部前期基于RabbitMQ实现了一套高可用的消息中间件平台。随着业务的持续增长,消息体量随之增大,对消息中间件平台提出了更高的要求,此外在运维过程中也遇到了高可用难以保障 ... »

vivotech

一张图进阶 RocketMQ - 消息存储

三此君看了好几本书,看了很多遍源码整理的 一张图进阶 RocketMQ 图片链接,关于 RocketMQ 你只需要记住这张图。 今天主要聊一聊 RocketMQ 消息的存储:消息的存储结构,Broker启动流程,消息的存储流程等。 关注微信公众号:三此君。回复 mq,可以领取 RocketMQ 相关... ... »

MQ系列2:消息中间件的技术选型

1 背景 在高并发、高消息吞吐的互联网场景中,我们经常会使用消息队列(Message Queue)作为基础设施,在服务端架构中担当消息中转、消息削峰、事务异步处理 等职能。 对于那些不需要实时响应的的业务,我们都可以放在消息队列中进行传输。下面是用户在进行系统注册的时候场景,充分体现MQ的作用 可以 ... »

一张图进阶 RocketMQ - 通信机制

三此君看了好几本书,看了很多遍源码整理的 一张图进阶 RocketMQ 图片链接,关于 RocketMQ 你只需要记住这张图。 今天我们先聊一聊 Netty 基本流程,然后分析 RocketMQ 的通信机制,最后通过异步消息发送来串联 RocketMQ 通信机制 关注微信公众号:三此君。回复 mq,... ... »

一张图进阶 RocketMQ - 消息发送

三此君看了好几本书,看了很多遍源码整理的 一张图进阶 RocketMQ 图片链接,关于 RocketMQ 你只需要记住这张图。 今天主要从一个生产者示例开始,以两行代码为切入点,逐步剖析生产者启动流程以及同步消息发送流程。 关注微信公众号:三此君。回复 mq,可以领取 RocketMQ 相关的所有资... ... »

C#实现异步消息队列

C#实现异步消息队列 消息队列 消息队列(英语:Message queue)是一种进程间通信或同一进程的不同线程间的通信方式,软件的贮列用来处理一系列的输入,通常是来自使用者。消息队列提供了异步的通信协议,每一个贮列中的纪录包含详细说明的资料,包含发生的时间,输入装置的种类,以及特定的输入参数,也就是说:消息的发送者和接收者不需要同时与消息队列互交。消息会保存在队列中,直到接收者取回它。 简单的说 »

c#进阶(4)—— Redis 用于消息队列的存储

1、参考的博文 a : http://www.cnblogs.com/lori/archive/2012/04/12/2443708.html —— 主要的实现思路 b:  http://www.cnblogs.com/liqingwen/archive/2017/04/06/6672452.html —— RedisHelper 类 c : https://www.cnblogs.com/sto »

如何解决消息队列的延时及过期失效问题?

或者: 消息队列满了以后该怎么处理? 或者: 几百万消息持续积压几小时,怎么解决?   问题本质是消费端出问题了,不消费或者消费慢。   1、消费端出问题了,大量消息积压在kafka里几个小时,怎么办? 正常思路是:修复consumer的问题,让他恢复消费,然后傻等几个小时消费完毕(不可取,用户等不了) 实际解决方法:只能操作临时紧急扩容:     (1)修复consumer问题,确保其恢复消费速 »