谷粒商城实战(020 RabbitMQ-消息确认)

2024-05-01 10:44

本文主要是介绍谷粒商城实战(020 RabbitMQ-消息确认),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强

总时长 104:45:00 共408P

此文章包含第258p-第p261的内容


消息确认

在这里插入图片描述
在这里插入图片描述
生产者 publishers
消费者 consumers
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
设置配置类
在这里插入图片描述
在这里插入图片描述
调用api
在这里插入图片描述
控制台
在这里插入图片描述

抵达brocker 代理
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

新版本ReturnCallback已弃用,可以这么写:rabbitTemplate.setReturnsCallback(System.out::println);
有这个方法,没过时啊,只是封装到了ReturnedMessage

投递到队列失败时才会回调
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

消费端确认机制

在这里插入图片描述

在这里插入图片描述
自动ack(危险,容易丢失数据)
手动dck(推荐开启)

在这里插入图片描述

如果通道中断(宕机等),消息会变成ready状态,通道打开为ack的时候会进入 unacked状态
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

进行ack 然后不是批量的签收 只ack自己
在这里插入图片描述
在这里插入图片描述
这里无法模拟真正宕机 所以其他的方法也运行了
IDEA还是会把进程走完,应该用 kill -9 pid 才能模拟服务器宕机
要想模拟真实的宕机,用netstat找出9000端口的进程,用taskkill杀掉进程

basicNack()的三个参数 id,是否批量拒绝,是否重新入队
在这里插入图片描述
在这里插入图片描述

重新入队后 还会进行投递,所以这里的数据变为了0
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
接收方法:开启手工模式

在这里插入图片描述
这里等订单模块需要的时候再进行详解
在这里插入图片描述


这篇关于谷粒商城实战(020 RabbitMQ-消息确认)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/951479

相关文章

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

Python中的随机森林算法与实战

《Python中的随机森林算法与实战》本文详细介绍了随机森林算法,包括其原理、实现步骤、分类和回归案例,并讨论了其优点和缺点,通过面向对象编程实现了一个简单的随机森林模型,并应用于鸢尾花分类和波士顿房... 目录1、随机森林算法概述2、随机森林的原理3、实现步骤4、分类案例:使用随机森林预测鸢尾花品种4.1

Golang使用minio替代文件系统的实战教程

《Golang使用minio替代文件系统的实战教程》本文讨论项目开发中直接文件系统的限制或不足,接着介绍Minio对象存储的优势,同时给出Golang的实际示例代码,包括初始化客户端、读取minio对... 目录文件系统 vs Minio文件系统不足:对象存储:miniogolang连接Minio配置Min

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

Springboot使用RabbitMQ实现关闭超时订单(示例详解)

《Springboot使用RabbitMQ实现关闭超时订单(示例详解)》介绍了如何在SpringBoot项目中使用RabbitMQ实现订单的延时处理和超时关闭,通过配置RabbitMQ的交换机、队列和... 目录1.maven中引入rabbitmq的依赖:2.application.yml中进行rabbit

SpringBoot 自定义消息转换器使用详解

《SpringBoot自定义消息转换器使用详解》本文详细介绍了SpringBoot消息转换器的知识,并通过案例操作演示了如何进行自定义消息转换器的定制开发和使用,感兴趣的朋友一起看看吧... 目录一、前言二、SpringBoot 内容协商介绍2.1 什么是内容协商2.2 内容协商机制深入理解2.2.1 内容

SpringBoot整合Canal+RabbitMQ监听数据变更详解

《SpringBoot整合Canal+RabbitMQ监听数据变更详解》在现代分布式系统中,实时获取数据库的变更信息是一个常见的需求,本文将介绍SpringBoot如何通过整合Canal和Rabbit... 目录需求步骤环境搭建整合SpringBoot与Canal实现客户端Canal整合RabbitMQSp

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置