目录1.MQ概述1.1RocketMQ简介1.2MQ用途1.3常见MQ产品2.RocketMQ基本概念2.1消息2.2主题2.3标签2.4队列 2.5Producer2.6Consumer2.7NameServer2.8Broker2.9RocketMQ工作流程 1.MQ概述1.1RocketMQ简介RocketMQ是阿里开源的分布式消息中间件,跟其它中间件相比,RocketMQ的特点是纯JAVA实现,是一套提供了消息生产,存储,消费全过程API的软件系统。1.2MQ用途限流削峰MQ可以将系统的超量请求暂存其中,以便系统后期可以慢慢进行处理,从而避免了请求的丢失或系统被压垮。 异步解耦上游系统
一、环境配置 阿里云:CentOS8.364位 JDK:JDK1.8.0_311 RocketMQ:RocketMQ4.9.2 rocketmq-dashboard:1.0.1二、安装RocketMQ2.1、安装RocketMQ RocketMQ4.9.2官网地址: ApacheRocketMQ[root@jeespring~]#wgethttps://dlcdn.apache.org/rocketmq/4.9.2/rocketmq-all-4.9.2-bin-release.zip[root@jeespring~]#
一、环境配置 阿里云:CentOS8.364位 JDK:JDK1.8.0_311 RocketMQ:RocketMQ4.9.2 rocketmq-dashboard:1.0.1二、安装RocketMQ2.1、安装RocketMQ RocketMQ4.9.2官网地址: ApacheRocketMQ[root@jeespring~]#wgethttps://dlcdn.apache.org/rocketmq/4.9.2/rocketmq-all-4.9.2-bin-release.zip[root@jeespring~]#
你好,我是yes。前不久踩了个坑,而这个坑跟RocketMQ推荐的一个最佳实践有关。看下我从官网的截图,官方推荐一个应用尽可能只用一个topic,然后用tags来标识子类型。从订单角度来看,可以用一个Topic-Order,然后再用不同的tag来区分这是3C类的订单,还是母婴类的订单等,然后下游应用根据不同的需求过滤不同的tag。这样的实现方式从业务上来看关系更清晰(有点树状的感觉),但是在实践上有点问题。问题和起因一般而言,生产上同一个服务至少会部署两台机器,不仅仅是为了负载均衡,也是为了系统的可靠性,当一台机器意外挂了,另一台可以扛起大旗。我们在发服务的时候,都是分批发布。这是为了验证新功
背景今天下游同事反馈,有一些以取消的订单库存还原异常了,导致部分商品库存没有还原。查日志发现没有收到还原消息,但是查看发送方是可以确认消息是已经发了的,那么是什么原因导致消费者没有收到,或者收到后没有处理消息呢。最后发现这些消息的状态都是NOT_ONLINE,原因是服务挂了,重启之后便可以重新消费了。让我们看看这个调查过程。调查消息丢失如何排查?当我们在使用mq的时候,经常会遇到消息消费异常的问题,原因有很多种,比如:producer发送失败consumer消费异常consumer根本就没收到消息「那么我们该如何排查了?」其实借助RocketMQ-Dashboard就能高效的排查,里面有很多你
RocketMQ发送消息失败排查错误信息:RocketMQMessagehasn'tbeensent.CausedbySend[1]times,stillfailed,cost[1982]ms,Topic:course-log-topic,BrokersSent:[broker-a]错误截图:(一)查看消费者情况#查看命令mqadminconsumerProgress-nlocalhost:9876查看结果:说明:发现对应的订阅组已经离线(查看对应的项目MQ地址和配置都是正确的),然后从服务日志中也看不出更多的问题(二)调整服务日志说明:调整服务日志级别到info,通过详细的日志信息定位发送失
RocketMQ消费者保障消息确认机制consumer的每个实例是靠队列分配来决定如何消费消息的。那么消费进度具体是如何管理的,又是如何保证消息成功消费的?(RocketMQ有保证消息肯定消费成功的特性,失败则重试)什么是ACK消息确认机制在实际使用RocketMQ的时候我们并不能保证每次发送的消息都刚好能被消费者一次性正常消费成功,可能会存在需要多次消费才能成功或者一直消费失败的情况,那作为发送者该做如何处理呢?为了保证数据不被丢失,RocketMQ支持消息确认机制,即ack。发送者为了保证消息肯定消费成功,只有使用方明确表示消费成功,RocketMQ才会认为消息消费成功。中途断电,抛出异常
RocketMQ消费者保障消息确认机制consumer的每个实例是靠队列分配来决定如何消费消息的。那么消费进度具体是如何管理的,又是如何保证消息成功消费的?(RocketMQ有保证消息肯定消费成功的特性,失败则重试)什么是ACK消息确认机制在实际使用RocketMQ的时候我们并不能保证每次发送的消息都刚好能被消费者一次性正常消费成功,可能会存在需要多次消费才能成功或者一直消费失败的情况,那作为发送者该做如何处理呢?为了保证数据不被丢失,RocketMQ支持消息确认机制,即ack。发送者为了保证消息肯定消费成功,只有使用方明确表示消费成功,RocketMQ才会认为消息消费成功。中途断电,抛出异常
目录一、常见中间件对比二、RabbitMq2.1、AMQP的核心概念2.2、关键点:2.2.1、持久化:
👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者📕系列专栏:前端、Java、Java中间件大全、微信小程序、微信支付、若依框架、Spring全家桶📧如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦🍂博主正在努力完成2023计划中:以梦为马,扬帆起航,2023追梦人 目录RocketMQ安装与配置RocketMQ管理命令RocketMQ整合springbootRocketMQ架构RocketMQ安装与配置环境搭建与测试 RocketMQ最新版本:5.0下载地址:https://roc