各位RocketMQ的爱好者和支持者们大家好:为了更好的促进社区交流,帮助更多的新老社区成员们更好的学习和使用RocketMQ,开源案例实践征集活动正在火热进行中,欢迎大家踊跃投稿~案例方向:分享如何使用ApacheRocketMQ解决业务及生产实践中某些场景难题以及您实现的技术方案,您可以从业务背景、目标、解决方案、解决了什么问题、前后对比分析、案例启示、案例对组织的价值意义等多个维度进行结构化提炼,图文形式最佳,以便让读者更加清晰的理解您的优秀案例。1000字左右即可~投稿时间截止到4月20日。所有案例会由社区专家进行评审,本次评审将分为初步入围“优秀技术实践”及TOP20优秀案例“春雨奖
各位RocketMQ的爱好者和支持者们大家好:为了更好的促进社区交流,帮助更多的新老社区成员们更好的学习和使用RocketMQ,开源案例实践征集活动正在火热进行中,欢迎大家踊跃投稿~案例方向:分享如何使用ApacheRocketMQ解决业务及生产实践中某些场景难题以及您实现的技术方案,您可以从业务背景、目标、解决方案、解决了什么问题、前后对比分析、案例启示、案例对组织的价值意义等多个维度进行结构化提炼,图文形式最佳,以便让读者更加清晰的理解您的优秀案例。1000字左右即可~投稿时间截止到4月20日。所有案例会由社区专家进行评审,本次评审将分为初步入围“优秀技术实践”及TOP20优秀案例“春雨奖
摘要:本文结合RocketMQ源码,分享并发编程三大神器的相关知识点。本文分享自华为云社区《读RocketMQ源码,学习并发编程三大神器》,作者:勇哥java实战分享。这篇文章,笔者结合RocketMQ源码,分享并发编程三大神器的相关知识点。1CountDownLatch实现网络同步请求CountDownLatch是一个同步工具类,用来协调多个线程之间的同步,它能够使一个线程在等待另外一些线程完成各自工作之后,再继续执行。下图是CountDownLatch的核心方法:我们可以认为它内置一个计数器,构造函数初始化计数值。每当线程执行countDown方法,计数器的值就会减一,当计数器的值为0时,
摘要:本文结合RocketMQ源码,分享并发编程三大神器的相关知识点。本文分享自华为云社区《读RocketMQ源码,学习并发编程三大神器》,作者:勇哥java实战分享。这篇文章,笔者结合RocketMQ源码,分享并发编程三大神器的相关知识点。1CountDownLatch实现网络同步请求CountDownLatch是一个同步工具类,用来协调多个线程之间的同步,它能够使一个线程在等待另外一些线程完成各自工作之后,再继续执行。下图是CountDownLatch的核心方法:我们可以认为它内置一个计数器,构造函数初始化计数值。每当线程执行countDown方法,计数器的值就会减一,当计数器的值为0时,
大家好,我是三友~~在众多关于MQ的面试八股文中有这么一道题,“如何保证MQ消息消费的幂等性”。为什么需要保证幂等性呢?是因为消息会重复消费。为什么消息会重复消费?明明已经消费了,为什么消息会被再次被消费呢?不同的MQ产生的原因可能不一样本文就以RocketMQ为例,来扒一扒RocketMQ中会导致消息重复消息的原因,最终你会发现,其实消息重复消费算是RocketMQ无奈的“bug”。微信公众号:三友的java日记如果有对RocketMQ不熟悉的小伙伴,可以看看我之前写的RocketMQ保姆级教程和RocketMQ消息短暂而又精彩的一生这两篇文章。消息发送异常时重复发送首先,我们来瞅瞅Rock
大家好,我是三友~~在众多关于MQ的面试八股文中有这么一道题,“如何保证MQ消息消费的幂等性”。为什么需要保证幂等性呢?是因为消息会重复消费。为什么消息会重复消费?明明已经消费了,为什么消息会被再次被消费呢?不同的MQ产生的原因可能不一样本文就以RocketMQ为例,来扒一扒RocketMQ中会导致消息重复消息的原因,最终你会发现,其实消息重复消费算是RocketMQ无奈的“bug”。微信公众号:三友的java日记如果有对RocketMQ不熟悉的小伙伴,可以看看我之前写的RocketMQ保姆级教程和RocketMQ消息短暂而又精彩的一生这两篇文章。消息发送异常时重复发送首先,我们来瞅瞅Rock
RocketMQ部署手册单MasterRocketMQ集群系统要求与准备条件64位操作系统,推荐Linux/Unix/macOS64位JDK1.8+Maventips检验java环境与maven环境java-versionmvn-v下载安装ApacheRocketMQRocketMQ的安装包分为两种,二进制包和源码包,二进制包是已经编译完成后可以直接运行的,源码包是需要编译后运行的。rocketmq-all-5.0.0-ALPHA-bin-release.zip源码包直接解压rocketmq-all-5.0.0-ALPHA-source-release.zip二进制包使用maven编译$unz
RocketMQ部署手册单MasterRocketMQ集群系统要求与准备条件64位操作系统,推荐Linux/Unix/macOS64位JDK1.8+Maventips检验java环境与maven环境java-versionmvn-v下载安装ApacheRocketMQRocketMQ的安装包分为两种,二进制包和源码包,二进制包是已经编译完成后可以直接运行的,源码包是需要编译后运行的。rocketmq-all-5.0.0-ALPHA-bin-release.zip源码包直接解压rocketmq-all-5.0.0-ALPHA-source-release.zip二进制包使用maven编译$unz
摘要:RocketMQ优异的性能表现,必然绕不开其优秀的存储模型。本文分享自华为云社区《终于弄明白了RocketMQ的存储模型》,作者:勇哥java实战分享。RocketMQ优异的性能表现,必然绕不开其优秀的存储模型。1整体概览首先温习下RocketMQ架构。整体架构中包含四种角色:Producer:消息发布的角色,Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。Consumer:消息消费的角色,支持以push推,pull拉两种模式对消息进行消费。NameServer:名字服务是一个非常简单的Topic路由注册中心,其角色类似
摘要:RocketMQ优异的性能表现,必然绕不开其优秀的存储模型。本文分享自华为云社区《终于弄明白了RocketMQ的存储模型》,作者:勇哥java实战分享。RocketMQ优异的性能表现,必然绕不开其优秀的存储模型。1整体概览首先温习下RocketMQ架构。整体架构中包含四种角色:Producer:消息发布的角色,Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。Consumer:消息消费的角色,支持以push推,pull拉两种模式对消息进行消费。NameServer:名字服务是一个非常简单的Topic路由注册中心,其角色类似