本文直指:在香港站群(E5、244IP)高并发下,如何把吞吐率和稳定性同时拉上来,并给出可执行参数。
不少同行反馈,IP多但单机CPU瓶颈、线程抖动和连接耗尽最常见。我们将在部署级、线程池和网络栈三层给出闭环方案,便于立刻落地。下一节进入并发调优的要点。
先明确:优先解决线程竞争、队列积压与IO并发三类问题,可把QPS提升20%-80%视为合理预期。
调优分三步走——限流与负载分担、线程/队列调参、底层TCP/内核优化。在实际项目落地中,我们通常先做小流量压测,验证每一项改动再全量放开。接下来细化线程池配置。
建议把核心线程设为CPU核数×1.5,最大线程设为CPU核数×3,且使用有界队列与CallerRuns策略做背压。
例如在4C机器上:core=6、max=12、queue=200~1000、keepAlive=60s、拒绝策略设为CallerRuns或自定义降级。我们在多个香港站群测试得出:有界队列比无界队列更能避免OOM。下一步看IO与连接层优化。
启用epoll、调整tcp_tw_reuse、backlog和keepalive参数,可明显降低短连接开销与TIME_WAIT堆积。
在Linux上:net.core.somaxconn=4096、net.ipv4.tcp_max_syn_backlog=4096、tcp_fin_timeout降至15s;同时启用SO_REUSEPORT以利于多进程负载分担。配合高防IP与BGP线路,会更稳。下一节讲监控与回收。
必须用指标驱动回收:监控线程数、队列长度、响应时间与GC停顿,达到阈值触发扩容或熔断。
我们建议:把JVM GC日志、prometheus指标和线程池报警接到统一告警链路;同时定期做线程Dump分析。行业共识是——可观测性先行,优化才有方向。下面讨论香港站群的特例策略。
利用244个出口IP进行源地址散列、限速与IP层熔断,配合高防流量清洗和BGP多线可以把CC风险降到可控区间。
实操要点:按IP维度做Token Bucket限速、按URL做速率阈值、启用黑白名单和验证码策略。记住——IP多并不等于安全,多IP需配合策略才能发挥效能。下一段给出落地检查清单。
先做四项:压测基线、线程池参数化、内核参数调整、可观测性接入;每项均有量化目标与回退路径。
要点总结:把每一项改动变成可回滚的实验。下一步,是把这些配置写进部署模板并做蓝绿验证。