![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
J2EE
文章平均质量分 57
hunger_wang
这个作者很懒,什么都没留下…
展开
-
Druid连接池耗尽问题排查总结
背景生产环境有个关键应用所有节点,每隔几个月就会发生一次Druid连接池耗尽问题,重启后恢复正常。目前我们还没有定位到问题原因,这边文章主要记录定位过程的一些思路和方法,后续如果找到根本原因,再做更新。思路数据库方向应用连接池耗尽1、会不会是应用与数据库的连接没有正常断开?查看故障时数据库socket连接情况,没有发现。2、会不会是应用执行了很多慢sql?查看故障时数据库慢sql日志,没有发现。3、会不会是应用执行了长事务?查看故障时数据库事务情况,没有发现。应用方向应用连接池耗尽原创 2021-06-11 20:12:22 · 10131 阅读 · 7 评论 -
程序响应慢了,看看资源池
程序响应慢了,看看资源池资源池,是指线程池、数据库连接池、redis连接池、http连接池等程序的池化资源。资源池,好的地方是,一方面解决了频繁创建销毁资源的开销;另一方面对资源加了限制,防止耗尽系统所有资源。不好的地方是,当某些业务因为异常,占用资源池较多资源时,其他业务获取不到资源或获取时间变长,慢点就出现了。现象会表现在资源池,当然,这不是资源池的错。慢,通常会表现为某些请求响应慢或无响应。现在系统,大量使用线程池,线程是基本工作单元,不管是什么业务因为什么资源池引起的慢,最终都会表现为线程池原创 2021-03-12 18:44:00 · 203 阅读 · 0 评论 -
Docker环境undertow线程数不足问题探究
Docker环境undertow线程数不足问题探究背景上篇Docker环境Spring Boot应用大量http请求超时,我们找到大量http请求超时原因:undertow的工作线程不足。留下一些疑问:undertow默认配置是怎样的?为什么其他微服务也使用默认参数,却有256个工作线程?结论k8s调度启动容器默认分配的cpu资源很小和OpenJDK 1.8.0_181会感知容器资源限制...原创 2019-06-14 18:55:36 · 5512 阅读 · 1 评论