遇到个高并发的问题

2022-03-15 10:11:58 +08:00
 luxinfl

配置:5 个 slb ,10 台 16C64G 的服务器。
接口:一个天气页面的运营位查询接口。业务逻辑是本地缓存+一次 get 请求。本地缓存时间可以忽略不计。
后端服务配置:默认 tomcat 设置,200msms 的获取连接时间,200ms 建立连接时间,500ms 的数据传输时间,默认最大路由数 30 。
现状:六点到八点间每台 slb 的 ttps 稳定在 80w 左右,某个时间会升高到 100w+。此时服务时延会变高(10ms 升到 1600ms 左右),错误数也会升高,接口成功率在 99.95%左右。  

有什么办法可以让这段时间的时延降低麽

4931 次点击
所在节点    程序员
41 条回复
byte10
2022-03-18 09:53:50 +08:00
@luxinfl 不是啊。。。少年。如果没有任何 io 的情况下,线程数 等于 cpu 即可,当然略大于也没啥问题。另外你说的 cpu 和内存几乎没变化,是因为你的压测工具不行。。。。你要换性能相同的客户端机器去压测你这台服务机器。还有客户端 http 连接数,需要大于服务端线程数的 3-5 倍左右才行。所以你应该要把我的那个视频完整的看完,你才能理解 http 要怎么进行压测才是最准确的。我盲猜你用 jmeter ,那玩意不行。你用 wrk ,或者其他的,甚至你用我的视频中的 那个压测脚本,多进程跑几个,绝对可以得到客观的性能数据。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/840400

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX