【复盘】记录一次数据库连接超时问题

问题

在下午4点左右,发现系统响应不正常。没有将结果返回给上游系统。

问题排查

1.先查看了机器的CPU、内存是否正常。发现没有问题。
【复盘】记录一次数据库连接超时问题_第1张图片
【复盘】记录一次数据库连接超时问题_第2张图片

2.接着看系统Error日志,发现大量的数据库连接不成功。进而分析是不是可能和请求量增加有关系。发现果然是。将近增加了一倍的量。

[io-5927-exec-12] o.h.engine.jdbc.spi.SqlExceptionHelper   : HikariPool-2 - Connection is not available, request timed out after 30000ms.

在这里插入图片描述

解决方案

1.将可以控制的流量开关,关闭,然后等失败的重试成功时候,系统恢复正常,在打开功能。保障系统稳定运行。
2.通过调整数据库连接池大小,增加到两倍。

# 连接池最大连接数,默认是10
maximum-pool-size: 60

更好的方案

1.避免耗时SQL出现,影响系统性能。
2.上线一个定时监控和杀掉慢SQL的脚本。
3.部分页面进行静态化返回。

你可能感兴趣的:(#,复盘,数据库)