- 博客(14)
- 收藏
- 关注
原创 SpringBoot Scheduler 不会重叠执行,也不会任务堆积
我断点看任务队列,一直是0。后来断点业务代码,发现底层调用的是FutureTask.runAndReset。就是把任务重复利用的一个方法。所以线程一直执行的都只有一个Task,而并不是到点就重新塞Task进去队列。使用Scheduler,但是担心执行时间太长,导致任务堆积在队列里,亦或是没有等前面任务执行完,新的触发导致并发执行。于是我本地做了测试,发现测试代码并没有出现上面的问题。查了网上的资料,也问了AI,说会出现上面说的异常。还望有研究的大神指点迷津。
2024-12-19 16:21:10
121
原创 java tomcat 每次创建websocket不走@PostConstruct
同事在开发websocket的时候,发现9.0.58版本每次连接,都会走@PostConstruct方法,但是在9.0.30版本则不会我们断点原码,发现WebSocket实例化的的工作并不是交给spring容器处理的,而是tomcat自己的行为。(启动的时候会由Spring容器生成单例的对象,但是后续的 websocket 连接并不会走spring容器的doGetBean,而是进入tomcat自己的调用栈)58版本和30版本的tomcat在连接的时候都会走如下方法WsHttpUpgradeHan
2022-05-10 15:10:29
278
原创 XML转JSON
<dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20160810</version> </dependency>JSONObject xmlJSONObj = XML.toJSONObject(xmlStr);
2022-04-24 11:42:58
124
原创 找风眼程序
package com.example.demo.findwindeye;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import java.io.*;import java.math.BigDecimal;import java.util.Comparator;import java.util.List;import java.util.Optional;import java.
2022-04-24 11:36:53
127
原创 排列组合算法
```java//无重复排列public static void main(String[] args) { Stack<String> stack = new Stack<>(); String[] arr = {"1","2","3","4"}; putStack(stack,arr);}public static void putStack(Stack<String> stack, String[] arr){
2021-07-30 14:00:30
141
原创 异步输出线程日志
大家都知道,日志是同步输出出来的。输出日志非常影响主线程执行效率。多线程打印日志会出线日志混乱的情况,一页日志可能包含了N个请求信息,影响问题排查效率。在没有适合的搜索工具...
2021-06-15 10:31:02
668
1
原创 责任链模式的简单实现
简单的责任链模式实现话不多说,直接上代码package com.zj.demo.demo.chain;public interface Chain { // 接口 void doFilter(Chain chain);}package com.zj.demo.demo.chain;import java.util.ArrayList;import java.util.List;public class ChainListImpl implements Chain{
2021-06-13 17:15:40
267
原创 @Before @After @Around @AfterReturning @AfterThrowing 执行顺序
==== 没有异常的情况环绕通知前....beforetest环绕通知后....afterafterReturning==== 有异常的情况环绕通知前....beforetestafterafterThrowable出现异常:msg=/ by zero==== 总结after一定走。是在finally里afterReturning 在抛异常时不出现。能取到返回值。说明是返回后获取before 在环绕通知后执行...
2021-06-11 16:56:31
1146
原创 redis-session改造过程
github地址:https://github.com/jcoleman/tomcat-redis-session-managertag原码下载地址:https://github.com/jcoleman/tomcat-redis-session-manager/releases/tag/1.2-tomcat-6
2021-06-11 10:46:25
1719
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人