一、场景

大模型要落地,公司内部也开发了对应业务,上线的这个模块遇到了好几次莫名的程序不在正常理解逻辑下执行任务的情况。简单来说就是接口调用过去,没有反应,没有了对应功能的日志。

今天又遇到一个定时任务xxljob 不执行的问题,服务里面没有任何日志,但是在xxljob 里面调用日志显示已经执行成功。

任务触发类型:Cron触发
调度机器:192.168.2.154
执行器-注册方式:自动注册
执行器-地址列表:[http://192.168.2.130:32003/, http://192.168.2.43:32003/]
路由策略:第一个
阻塞处理策略:单机串行
任务超时时间:0
失败重试次数:0

>>>>>>>>>>>触发调度<<<<<<<<<<<
触发调度:
address:http://192.168.2.130:32003/
code:200
msg:null

二、分析

遇事不决问AI ,于是又开始了一段上下文对齐的尝试。

1、确认服务器端口有没有监听

2、确认xxljob 执行服务器和 业务服务器是否能联通

curl -v http://192.168.xx.xx:32003/xxl-job-admin

这些都排查了没问题,另外就是有两个服务实例,重启了一个实例恢复正常,更加加重了对于服务xxl 假死的可能性确认。

之前排查的连接数满的命令:

jstack 3313779 | grep "http-nio" | wc -l

这次用上了,没有问题,因为其他请求也是正常的,就是xxljob 有问题。

最后 AI 给出这个排查命令:

jstack 你的Java进程PID | grep xxl

jstack 3020565 | grep xxl "xxl-job, EmbedServer bizThreadPool-1187626800" #8034791 prio=10 os_prio=0 tid=0x00007f2e4800d000 nid=0xd3f37 waiting on condition [0x00007f2dee8fe000] "xxl-job, JobThread-9-1775116140010" #6539204 prio=10 os_prio=0 tid=0x00007f2e40415000 nid=0x3e6049 runnable [0x00007f2dedafe000] at com.xxl.job.core.handler.impl.MethodJobHandler.execute(MethodJobHandler.java:29) at com.xxl.job.core.thread.JobThread.run(JobThread.java:166) "xxljobRegister-schedule-pool-1" #167 daemon prio=5 os_prio=0 tid=0x00007f2f3b796000 nid=0x2e1c73 waiting on condition [0x00007f2f0e7fc000] "xxl-job, executor ExecutorRegistryThread" #136 daemon prio=5 os_prio=0 tid=0x00007f2f10354800 nid=0x2e1bf1 waiting on condition [0x00007f2edf6fe000] at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:70) at com.xxl.job.core.server.EmbedServer$1.run(EmbedServer.java:88) at com.xxl.job.core.thread.TriggerCallbackThread$2.run(TriggerCallbackThread.java:121) "xxl-job, executor TriggerCallbackThread" #120 daemon prio=5 os_prio=0 tid=0x00007f2df4354800 nid=0x2e1be1 waiting on condition [0x00007f2f150fb000] at com.xxl.job.core.thread.TriggerCallbackThread$1.run(TriggerCallbackThread.java:66) "xxl-job, executor JobLogFileCleanThread" #119 daemon prio=5 os_prio=0 tid=0x00007f2df434f800 nid=0x2e1be0 waiting on condition [0x00007f2f14dfa000]

xxl-job, EmbedServer bizThreadPool → 业务线程池活着

xxl-job, JobThread-9-xxx → 任务线程正在运行!!!

xxljobRegister-schedule-pool → 注册线程活着

ExecutorRegistryThread → 注册心跳线程活着

TriggerCallbackThread → 回调线程活着

JobLogFileCleanThread → 日志清理线程活着

jstack 3020565 | grep -A 20 "JobThread-9"

jstack 3020565 | grep -A 20 "JobThread-9" "xxl-job, JobThread-9-1775116140010" #6539204 prio=10 os_prio=0 tid=0x00007f2e40415000 nid=0x3e6049 runnable [0x00007f2dedafe000] java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) at java.net.SocketInputStream.read(SocketInputStream.java:171) at java.net.SocketInputStream.read(SocketInputStream.java:141) at java.io.BufferedInputStream.fill(BufferedInputStream.java:246) at java.io.BufferedInputStream.read1(BufferedInputStream.java:286) at java.io.BufferedInputStream.read(BufferedInputStream.java:345) - locked <0x00000003e1f8da38> (a java.io.BufferedInputStream) at sun.net.www.MeteredStream.read(MeteredStream.java:134) - locked <0x00000003e1f8da60> (a sun.net.www.http.KeepAliveStream) at java.io.FilterInputStream.read(FilterInputStream.java:133) at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:3523) at cn.hutool.http.HttpInputStream.read(HttpInputStream.java:41) at cn.hutool.core.io.copy.StreamCopier.doCopy(StreamCopier.java:97) at cn.hutool.core.io.copy.StreamCopier.copy(StreamCopier.java:68) at cn.hutool.core.io.IoUtil.copy(IoUtil.java:162) at cn.hutool.http.HttpResponse.copyBody(HttpResponse.java:631) at cn.hutool.http.HttpResponse.readBody(HttpResponse.java:608) at cn.hutool.http.HttpResponse.forceSync(HttpResponse.java:578)

就发现又是有接口调用没有增加超时处理机制,就陷入了无限等待了。

三、解决方法

2026年6月的某一天,同样是这个大模型相关服务,出现类似问题,智能问答接口无响应,其他接口正常,导出堆栈信息丢给AI 分析:

仍然是有接口没有设置超时,导致无限等待,后面触发了其他地方的死锁,总之是资源没有释放,导致相关流程接口调用进来之后就无响应了,而其他接口调用还是正常的,跟这部分资源无关。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐