SpringBoot 整合 Netty 实现 socket 的服务,服务器是 64 核 128G ,用相同配置的压力机测试,测试出来的 TPS 仅为 30w ,目标是 100w ,应该从什么方面优化(服务器 CPU 使用率仅为 10%左右)。
1 、压力机和服务器是光纤直连。
2 、socket 服务端没有任何业务逻辑,收到消息就直接返回
3 、目前配置:主线程数 8 ,工作线程数 64 ,连接请求队列大小为 10240 (即 SO_BACKLOG )
.option(ChannelOption.SO_BACKLOG, backlog)
.option(ChannelOption.SO_TIMEOUT, 1)
.option(ChannelOption.SO_REUSEADDR, true)
.childOption(ChannelOption.SO_KEEPALIVE, true)
.childOption(ChannelOption.TCP_NODELAY, true)
1
anonydmer 358 天前
64 核的机器线程数配置的有点少吧
|
4
Dream95 358 天前
施压机是怎么发起压力的
|
5
Scarb 358 天前
压力机的线程增多点
|
6
mysunshinedreams 357 天前
增加压测机器的数量,感觉没压满啊
|
7
huskyui 357 天前
我记得这个是一个面试问题吧,好像要改配置的
https://juejin.cn/post/7023279068736913422 |
9
lylala8 347 天前
内存占用是什么情况
|
10
lylala8 347 天前
感觉还是得集群 线程增多 线程切换会耗时 tps 就降低了,还有种情况就是压测机器支持不了这么多线程,自身处理响应就耗时增加导致 tps 下降
|