作者:君哥聊技术来源:https:mp.weixin.qq.comsn9QlZ73SQyCGIyPLvHMy0A大家好,我是君哥。今天聊一聊 RocketMQ 的顺序消息实现机制。在有些场景下,使用 MQ 需要保证消息的顺序性,比如在电商系统中,用户提交订单、支付订单、订单出库这 3 个消息应该保证顺序性,如下图:对于 RocketMQ 来说,主要是通过 P …
一 RocketMQ基础1.1 介绍MQ是一种提供消息队列服务的中间件,也称为消息中间件,是一套提供了消息生产、存储、消费全过程API的软件系统。RocketMQ是使用Java语言开发的一款MQ产品,经过数年阿里双11的考验,性能与稳定性非常高,其没有遵循任何常见的MQ协议,而是使用自研协议。1.2 官网地址https:rocketmq.apache.org …
今天我们来讨论如何在项目开发中优雅地使用RocketMQ。本文分为三部分,第一部分实现SpringBoot与RocketMQ的整合,第二部分解决在使用RocketMQ过程中可能遇到的一些问题并解决他们,第三部分介绍如何封装RocketMQ以便更好地使用。1. SpringBoot整合RocketMQ在SpringBoot中集成RocketMQ,只需要简单四步 …
在目前开源的RockeMQ版本中,并不支持发送任意时间精度的延迟消息。有很多同学应该也会碰到这样的问题:如果要发送任意时间精度的延迟消息,该如何做?碰到这个问题其实就要从MQ的实现原理上找切入点,今天通过查资料,把这种操作简单落地了。常见的解决方案1.定时扫描事先记录事件的触发时间点,定时任务不停查数据库对比触发时间。这种方式不实时,随着定时任务的执行频率变 …
RocketMQ版本version: 5.1.0RocketMQ中consumer消费模型在了解RocketMQ的Rebalance机制之前,我们必须先简单了解下rocketmq的消费模型我们知道在我们创建topic的时候需要指定一个参数就是读队列数这里假设我们的topic是xiaozoujishu-topic,我们的读队列数 是4个,我们同一gid下的集群 …
有关RocketMQ实现分布式事务的理论知识,下篇也会示例 通过SpringCloud来实例RocketMQ实现分布式事务的项目。一、举个分布式事务场景列子:假设 A 给 B 转 100块钱,同时它们不是同一个服务商。目标:就是 A 减100块钱,B 加100块钱。实际情况可能有四种:1)就是A账户减100 (成功),B账户加100 (成功)2)就是A账户减 …
目录1、页缓存技术 + 磁盘顺序写2、零拷贝技术3、最后的总结这篇文章来聊一下Kafka的一些架构设计原理,这也是互联网公司面试时非常高频的技术考点。Kafka是高吞吐低延迟的高并发、高性能的消息中间件,在大数据领域有极为广泛的运用。配置良好的Kafka集群甚至可以做到每秒几十万、上百万的超高并发写入。那么Kafka到底是如何做到这么高的吞吐量和性能的呢?这 …
在当今互联网后端开发的领域中,高效的数据传输与处理至关重要。消息队列作为一种强大的工具,能够帮助我们解耦系统、实现异步处理以及提升系统的整体性能。其中,RocketMQ 以其高性能、高可靠、可扩展的特性,成为众多互联网大厂在分布式系统中处理消息的首选之一。而 Spring Boot 3 框架,凭借其便捷的开发体验和强大的生态支持,更是让开发者们爱不释手。那么 …
前言大家好,我是小郭,今天主要来和大家聊一聊RocketMQ中的线程池是如何创建的,如何设置线程池数量,同时也可以从中去学习到一些线程池的实践和需要注意的一些细节。RocketMQ在哪些地方使用到了线程池?在RocketMQ中存在了大量的对线程池的使用,从消息的生产到投递Broker中,到最后的消息消费每一个环节中都大量使用到线程池的地方,下面我们拿出几个不 …
技术人必备!关注我的公众号 「老王的技术时光」 每天分享:最新技术干货 | 实战经验 | 行业趋势 | 个人成长 助你提升:编程技巧 | 架构设计 | 面试心得 | 学习方法 立即关注,订阅获取每周更多精彩内容,持续干货,等你来拿! 第一篇:开启RocketMQ之旅~~一、快速实战:使用Spring Boot与RocketMQ集成在本节中,我们将通过Spr …