This topic created in 1692 days ago, the information mentioned may be changed or developed.
我们的项目是单机部署。
有一个接口,平常访问是 300ms 左右,有一次 4 分钟内项目所有请求是 12000 次,其中这个接口被访问了 8000 次,有 1000 次左右响应时间都是 11s 。
我们的服务器是 8 核 16 线程的,一共部署了 4 个项目,其他项目是内部使用,访问量不会太大,tomcat 参数没有配置过。
现在我想问一下,那次访问变慢是 8 核 cpu 处理太多请求的原因,还是 tomcat 限制 200 并发的原因?
求各位大佬解答
19 replies • 2021-11-05 15:00:48 +08:00
 |
|
2
liuxu Nov 3, 2021 3
我的电脑平时用的挺好了,开了个软件就卡了,怎么回事,是不是我的电脑限制了这个软件运行,求大佬解答
|
 |
|
3
BBCCBB Nov 3, 2021
要做监控.. 才能知道是 tomcat, cpu 还是说压力大了你代码里某部分执行的慢了. 比如 sql 在压力下执行的慢了.
猜是猜不出来的.
|
 |
|
4
theOneMe Nov 3, 2021
就你单机部署,单个接口而言,限制并发的原因就是接口的响应耗时和线程数配置,当然这些影响因素要以其中的短板来说
|
 |
|
5
Mithril Nov 3, 2021
性能调优要先做 profile ,不要虚空打靶随便瞎调。除非这问题你见过,不然纯属浪费时间。
|
 |
|
6
hiranye Nov 3, 2021
这个信息不够啊,你只描述了现象,响应慢的话和 CPU 负载、数据库负载都有关系的,还是得看当时的服务器状态
|
 |
|
7
securityCoding Nov 3, 2021
接口反应慢第一时间查 sql ,一上来就开始 tomcat 调优大概率会调了个寂寞
|
 |
|
8
clf Nov 3, 2021
接口做了啥操作,数据库是啥,信息呢?
(我电脑很卡,你能帮我修一下吗)
|
 |
|
9
MaxTan Nov 3, 2021
我最近在拿上游接口数据,也是跑个几分钟就开始变慢,最后干脆 timeout 无响应,老实说是不是你?
|
 |
|
10
dqzcwxb Nov 3, 2021
接口响应 11s 你不去优化再怎么提高线程池数并发数都白搭
|
 |
|
11
ch2 Nov 3, 2021
查日志
|
 |
|
12
byte10 Nov 3, 2021
只有一个原因那就是代码烂,8 核 闭着眼睛写,只要逻辑正确,随便几千的并发问题不大。4 分钟 8000 次,平均每秒 40 并发,赶紧看看代码把,tomcat 默认配置都不至于这么差的并发,哪怕配置负优化,也不至于这么差。
|
 |
|
14
3kkkk Nov 3, 2021
查代码吧你是有多看不起 tomcat 和 8 核主机。
|
 |
|
15
Latin Nov 3, 2021
开个 ssh 让我上去看看(
|
 |
|
16
yuseoikei Nov 3, 2021
看一下哪些更新操作的 sql 比较耗时,而且没走索引
|
 |
|
17
nekoyaki Nov 3, 2021
老板让你同时干 10 个活,你干得比干一个活的时候慢,是公司的限制还是老板的限制?
|
 |
|
18
zeni123 Nov 3, 2021
用 java 自带工具 jvisualvm 连上去看看
1. CPU 占用量 2. 线程的数量 一台机器最大 10000 ,也也可看看有多少是 WAITING 状态。看看是否有死锁 3. Full GC 是否频繁
上面是 JAVA 的,然后就是看数据库的了
|
 |
|
19
Konys Nov 5, 2021
遇到这种问题我一般先往 SQL 上想
|