![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
文章平均质量分 68
丶只有影子
不唯书 不唯上 不唯众 只唯实
展开
-
【链路追踪】Java多线程之间日志traceId传递
在生产环境中,由于处在并发环境,所以日志输出的顺序散落在各个不同行,通过traceId就能够快速定位到同一个请求的多个不同的日志输出,可以很方便地跟踪请求并定位问题。但是,如果在代码中使用了多线程,那么就会发现,新开的线程不会携带父线程traceId。于是,通过继承父线程的MDC上下文信息,使得新开的线程与父线程保持一致的traceId。原创 2023-04-12 23:19:48 · 2108 阅读 · 3 评论 -
【链路追踪】xxl-job定时任务日志增加traceId
注入,在生产环境进行日志追溯时比较方便。但是在使用xxl-job进行定时任务管理时,却发现xxl-job线程打印出来的日志没有。注入,同时也增加了统一日志打印,不需要在每个定时任务入口都打印日志(如果不需要也可以去掉)。,查询日志时十分不方便,于是通过使用。通过增加以上类,即可实现。原创 2023-11-23 23:41:30 · 1034 阅读 · 0 评论 -
【Redisson】基于自定义注解的Redisson分布式锁实现
在项目中,经常需要使用Redisson分布式锁来保证并发操作的安全性。在未引入基于注解的分布式锁之前,我们需要手动编写获取锁、判断锁、释放锁的逻辑,导致代码重复且冗长。为了简化这一过程,我们引入了基于注解的分布式锁,通过一个注解就可以实现获取锁、判断锁、处理完成后释放锁的逻辑。这样可以大大简化代码,提高开发效率。原创 2023-11-23 23:07:54 · 1456 阅读 · 0 评论 -
Spring中@Transactional注解事务传播行为propagation参数说明
在SpringBoot项目中,我们通常使用去进行事务控制,而注解中,有个比较关键的属性就是。在一个的环境中,一个事务方法调用另一个事务方法时,就会涉及到事务的传播行为,该属性用来控制一段代码经过多个注解生效(同一个类的不同方法调用是不会生效的)的方法的事务传播机制。由源码可知,他是用来指定的,在不指定的情况下,默认值为。而查看可知,一共有以下7个属性。原创 2023-06-28 23:53:42 · 763 阅读 · 0 评论 -
rocketmq-spring-boot-starter支持SpringBoot 1.x(spring-context 4.x)版本
由于历史原因,项目使用的是版本,而且由于种种原因,不能升级。在项目开发迭代过程中,决定使用RocketMQ作为消息中间件,因为是SpringBoot项目,理所应当的引入了依赖。原创 2023-06-27 23:15:33 · 1832 阅读 · 0 评论