以往对weblogic stuck认识是:
1.会造成系统总体慢。
2.在weblogic console中线程监控中会有显示。
3.weblogic使用队列处理线程。隔一段时间会扫描线程队列,默认超过600s还没有结束就在日志告警(stuck),console上服务会有告警。
今天要验证的问题:stuck线程假设一直在执行,假设stuck太久会自己主动被kill吗?扫描stuck进程会不会在每一个扫描周期内都报stuck。
实验环境:jdk1.6 + weblogic10 + oracle10g
破坏场景:如今数据库中select * from test for update。然后在jsp页面上写一个select * from test for update。
实验结果:每次訪问jsp页面时。都出现两个stuck的警告信息。且stuck的线程不会被自己主动kill(等了三个小时都没有被kill)。然后解锁数据库的test表,日志中也没有报unstuck。