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的性能

相关推荐
serve the people几秒前
Formatting Outputs for ChatPrompt Templates(two)
前端·数据库
岁岁岁平安38 分钟前
python MongoDB 基础
数据库·python·mongodb
NO.10241 小时前
11.4八股
java·linux·数据库
Dxy12393102161 小时前
MySQL的UPPER函数介绍
数据库·mysql
倔强的石头_1 小时前
KingbaseES:从兼容到超越,详解超越MySQL的权限隔离与安全增强
数据库
yuezhilangniao2 小时前
mysql mogoDB pg redis-四大数据库选型-数据库对比大白话指南
数据库·redis·mysql
一 乐2 小时前
医疗保健|医疗养老|基于Java+vue的医疗保健系统(源码+数据库+文档)
java·前端·数据库·vue.js·毕设
m0_748248023 小时前
Redis 简介与安装指南
数据库·redis·缓存
Elastic 中国社区官方博客8 小时前
在 Elasticsearch 中使用 Mistral Chat completions 进行上下文工程
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
编程爱好者熊浪10 小时前
两次连接池泄露的BUG
java·数据库