- 博客(14)
- 收藏
- 关注
原创 RocketMQ 4.x各种开发模型简介及实战
半事务消息是指暂不能投递的消息,生产者已经成功地将消息发送到了 Broker,但是Broker 未收到生产者对该消息的二次确认,此时该消息被标记成“暂不能投递”状态,如果发送成功则执行本地事务,并根据本地事务执行成功与否,向 Broker 半事务消息状态(commit或者rollback),半事务消息只有 commit 状态才会真正向下游投递。事务消息只保证消息发送者的本地事务与发消息这两个操作的原子性,因此,事务消息的示例只涉及到消息发送者,对于消息消费者来说,并没有什么特别的。
2024-10-14 16:00:00
1557
1
原创 spring是如何解决循环依赖的
1.什么是循环依赖?所谓的循环依赖是指,A 依赖 B,B 又依赖 A,它们之间形成了循环依赖。或者是 A 依赖 B,B 依赖 C,C 又依赖 A。spring是通过三级缓存来解决循环依赖的为什么需要二级缓存?一级缓存和二级缓存相比:二级缓存主要是为了分离成熟Bean和纯净Bean(未注入属性)的存放, 防止多线程中在Bean还未创建完成时读取到的Bean时不完整的。所以也是为了保证我们getBean是完整最终的Bean,不会出现不完整的情况。一二三级缓存下二级缓存的意义:二级缓存为了存储 三
2022-05-10 23:30:15
461
原创 2022java面试(未附答案)
java面试中遇到的问题,用于自省。待补充。。。一、线程1、单线程为什么还能乱序2、内存屏障到底是什么3、用两个线程,一个输出字母,一个输出数字,交替输出1A2B3C4D5E6Z4、HotSpot实现上偷懒的地方5、并发模型有比java更先进的6、DCL到底需不需要volatile7、锁在java中如何实现8、悲观锁、乐观锁、互斥锁、共享锁、读写锁、分段锁概念详解10、详解自旋锁11、java中的锁优化,锁升级详解二、jvm1、对象在内存中的存储布局2、对象头具体包括什么3、对
2022-05-02 16:46:03
1169
原创 spring事务管理是如何实现的?
spring的事务是由aop实现的,首先要生成具体的代理对象,然后按照aop的整套流程来执行具体的操作逻辑,正常情况下要通过通知来完成核心功能,但是事务不是通过通知来完成的,而是通过一个TransactionIntercaptor来实现的,然后调用invoke来实现具体的逻辑。分:1、先做准备工作,解析各个方法上事务相关的属性,根据具体的属性来判断是否开始新事务2、当需要开启的时候,获取数据库连接,关闭自动提交功能,开启事务。3、 执行具体的sql逻辑操作4、在操作过程中,如果执行失败了,那么会通
2022-04-20 23:26:02
3327
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人