mysql 的连接数 有时就会突然暴增  查询数据库没有发现死锁  从开始上涨的时候所有查询都变成了满查询 导致大量线程等待  然后tomcat新建连接  从而连接数继续上涨   求大神帮忙解答

解决方案 »

  1.   

    是不是有人用了for update
      

  2.   

    没有用for update   
      

  3.   

    其实慢查询本身就会导致连接变多
    连接池的连接释放慢,就会申请新的连接直到最大连接数
    当然不一定是慢连接会如此,一个事务周期内一个线程会持有一个connection对象,如果吞吐量不够的话(比如大量计算,调用远程服务等等),都会导致连接被持有过长时间
    可以通过修改连接池配置,比如多长时间不释放强迫释放,这个只能缓解
    或者估算服务吞吐量上限,对服务限流,比如sentinel,对系统进行保护
    https://github.com/alibaba/Sentinel
      

  4.   

    在mysql的管理工具里查看一下每个连接的内容