91、RabbitMQ事务消息

RabbitMQ事务消息

通过对信道的设置实现

  1. channel.txSelect(); 通知服务器开启事务模式;服务端会返回Tx.Select-ok

  2. channel.basicPublish; 发送消息,可以是多条,可以是消费消息提交ack

  3. channel.txCommit() 提交事务

  4. channel.txRollback() 回滚事务

消费者使用事务:

  1. autoAck=false.手动提交ack,以事务提交或回滚为准:
  2. autoAck=true,不支持事务的,也就是说你即使在收到消息之后在回滚事务也是于事无补的,队列已经把消息移除了

如果其中任意一个环节出现问题,就会抛出IOException异常,用户可以拦截异常进行事务回滚,或决定要不要重复消息。

事务消息会降低rabbitmq的性能

相关推荐
东风破_3 小时前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
橙子家4 小时前
OSS 文件上传的几个风险点和解决方案
数据库
2601_962066496 小时前
【Sql Server】Update中的From语句,以及常见更新操作方式
android·java·数据库
愤怒的苹果ext6 小时前
MySQL Shell备份恢复数据库
数据库·mysql·备份恢复·mysqlsh
数字新视界8 小时前
DCIM管理系统的技术架构与部署模式详解
数据库·物联网·数据中心·数据中心基础设施管理·dcim管理系统
何以解忧,唯有..8 小时前
Pydantic 介绍与使用:Python 数据校验的现代方案
数据库·python·microsoft
这个DBA有点耶10 小时前
数据库容灾进入“秒级时代”:同城双活架构原理、关键技术选型与落地实践
数据库·架构·dba
2601_9620748110 小时前
大数据-264 实时数仓 - Canal MySQL的binlog研究 存储目录 变动信息 配置MySQL
大数据·数据库·mysql
2601_9620738110 小时前
大数据-240 离线数仓 - 广告业务 测试 ADS层数据加载 DataX数据导出到 MySQL
大数据·数据库·mysql
Frank_refuel11 小时前
【MYSQL进阶】-> 索引理解
数据库