消息确认机制

消息确认机制(失误+confirm)

 

事务机制

每一次提交和请求的时候都会降低吞吐量(少用)

三种模式

 

txSelect:用于将当前channel设置为(事务)transation模式

txCmmit:提交事务

txRollback:回滚事务

 

代码用例:

生产者

 

消费者

 

 

Confirm模式

 

生产者confirm模式的原理

 

该模式的好处是什么?

该模式是异步的,能提高吞吐量。

 

1单条确认(效率很低)

生产者:

 

2:批量确认

 

3:异步确认

 

生产者类代码:

添加通道的监听:只有消息到达之后才会调回调函数。

成功了会回掉handleAck(),失败了回掉handleNack()

 

Boolean multiple:表示返回的确实是否为多条记录。basicAck 方法的第二个参数 multiple 取值为 false 时,表示通知 RabbitMQ 当前消息被确认;如果为 true,则额外将比第一个参数指定的 delivery tag 小的消息一并确认。对同一消息的重复确认,或者对不存在的消息的确认,会产生 IO 异常,导致信道关闭。

 

如果是多条,则把序号大于deleverTag+1的记录全部删除

如果是单条则指删除序列号为deleverTag的记录

 

 

 

猜你喜欢

转载自www.cnblogs.com/domi22/p/9096006.html