如何发现系统瓶颈?

2023-07-21 15:16:39 +08:00
 xifenglie40

spring 开发的单体服务,客户给的服务器配置是 4c16g ,客户让我们在上面部署我们自己的 mysql,redis,web 和 nginx,我们为了方便,全都使用了 docker 。用 jmeter 开 200 线程压测,tps 最高 400 没问题,再高就上不去了,问下大佬这个并发量正常吗? 查了下网上的资料,尝试修改了下配置如下:max-threads=800,min-spare-threads=100 ,max-connections=10000 ,accept-count=1000 ,并改了 java 启动参数-Xmx3072M -Xms3072M ,都比原来数值调大了些。结果 tps 不升反降了。到底是服务线程数不够还是数据库 io 问题?怎么定位系统瓶颈在哪里?都应该观察哪些指标?

1175 次点击
所在节点    程序员
1 条回复
Aumujun
2023-07-21 15:47:31 +08:00
看 load ,看上下文切换次数,看 swap 空间,看 iowait ,看系统的 sysctl 配置,看系统 tcp 相关参数配置,网络带宽,很多很多。

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

https://www.v2ex.com/t/958616

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

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

© 2021 V2EX