请教个关于 tomcat 线程执行时间过长问题 - V2EX
Spider1996
V2EX    Java

请教个关于 tomcat 线程执行时间过长问题

  •  
  •   Spider1996 Aug 5, 2024 3185 views
    This topic created in 661 days ago, the information mentioned may be changed or developed.
    最近在 pinpoint 监控上发现偶尔会出现个别执行时间特别长的线程(查询数据接口,正常这个接口响应时间都是秒级),我在 nginx 上设置的 proxy_read_timeout 是 60s ,所以查询时间超过 60s 已经返回 http504 了。但是这部分的线程仍然在执行。是否可以结束掉这些线程,或者是什么原因造成了这些线程执行时间过长,应该从哪入手解决这个问题?


    下面是 pinpoint 跟踪的截图:
    [Imgur]( )


    执行慢都是在 jdbc 查询特别久
    [Imgur]( )
    7 replies    2024-08-07 09:56:01 +08:00
    sagaxu
        1
    sagaxu  
       Aug 5, 2024
    “执行慢都是在 jdbc 查询特别久”

    那自然是连接到数据库,把超时的 SQL 捞出来分析一下,是 SQL 本身的问题,还是 DB 临时资源不够
    opengps
        2
    opengps  
       Aug 5, 2024
    排查慢 SQL
    Spider1996
        3
    Spider1996  
    OP
       Aug 5, 2024
    @sagaxu sql 本身单独执行速度都是正常的,是因为我 db 连接池资源不够导致时间会拉长吗?
    Pantheoon
        4
    Pantheoon  
       Aug 6, 2024
    看下数据库,是不是数据库有超长 sql,或者等待的情况
    Chinsung
        5
    Chinsung  
       Aug 6, 2024
    看下 druid 配置,db 本身没有慢 sql 的话,可能是连接数不够,此时 druid 获取一个链接的时间过长
    但是你这个堆栈看起来不像阻塞在了 getConnection ,看下带宽问题?
    或者是循环执行一个很快的 sql ,比如查询几 W 次一个几十 ms 的 sql ,接口会慢但是 db 不会有慢 log
    pinpoint 可以看到接口,看下是不是接口里有没有什么奇怪的写法,实在不行接口里的 sql 都加个前后打印时间的输出看下
    Spider1996
        6
    Spider1996  
    OP
       Aug 7, 2024
    @Chinsung 如果是连接池连接不够是会卡在 getConnection 吗
    Chinsung
        7
    Chinsung  
       Aug 7, 2024
    @Spider1996 #6 是的,不过 pinpoint 好像没有堆栈的详细时间,之前公司用阿里云的 arms ,在 sql 变慢,上游请求明显大于配置的连接数的时候,满请求明显都是阻塞到了 getConnection 的
    About     Help     Advertise     Blog     API     FAQ     Solana     939 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 45ms UTC 19:59 PVG 03:59 LAX 12:59 JFK 15:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86