Java 线程池参数调优:从拒绝策略到队列积压的实战拆解
线上服务在晚高峰时出现接口超时,日志里频繁打印 RejectedExecutionException,但 CPU 和内存监控并没有明显飙高。排查后发现是订单异步通知模块的线程池配置有问题:核心线程数写死成 2,队列用的是无界 LinkedBlockingQueue,结果任务在队列里越堆越多,下游数据库连接被长时间占用,最终拖垮了整个请求链路。线程池参数看着简单,但核心线程数、最大线程数、队列容量、空闲存活时间和拒绝策略之间互相制约,选错一个就可能让系统在流量波动时表现异常。这篇文章从实际踩坑场景出发,结合 ...