Java
Java
梦回雨街
这个作者很懒,什么都没留下…
展开
-
多线程-任意线程数按序打印数字
问题描述给指定线程数threadSum,将数字从初始值开始连续打印n个数字(数字步长为1)解题思路考察多线程使用,由于是指定线程数,我们需要动态创建线程,threadSum个线程要执行同一个逻辑,因此需要在此逻辑中设计个线程执行逻辑即可。执行打印的线程是固定的,JDK中已有的线程同步工具中,Semaphore是比较符合这种场景的,通过加减令牌让线程之间协同按序打印。实现逻辑 public static void main(String[] args...原创 2022-03-31 01:56:29 · 273 阅读 · 0 评论 -
记一次生产数据库连接池大量连接超时问题排查
最近一段时间公司业务量上来了,与此同时伴随着程序猿终生的问题出现了。服务异常总体的表现就是每天不定时间出现访问超时并持续一段时间,偶尔又好了。刚开始出现次数很少,服务中断一小段时间后就自己恢复了。但随着时间推移,这种情况出现频率变高了,而且持续时间也变久了。老板此时的状态中断服务怎能忍,我打起了12分精神,开始排查问题,既然是数据库连接池抛出的问题,首先检查是不是数据库连接池参数出问题了,有长事务占用数据库连接不释放,并发数过多导致连接池连接耗尽,然后一顿参数调整,发现效果不大,...原创 2021-03-17 11:24:39 · 1622 阅读 · 1 评论