求助关于API耗时长以及并发数低的问题
发布于 4 年前 作者 zhengtao137325043 5114 次浏览 来自 问答

我是一个刚开始用nodejs不到半年的新人,本身的开发经验也不到两年,被老大赶鸭子上架,用docker和strapi框架做了一个小系统,但并发一直很低,自己写了几个测试API,Jmeter测试结果如下 第一个API里面完全只有基础业务判断,以及一个异步发送emq消息 第二个API里面是将第一个API的异步发送emq替换成了查询数据库操作 emq.pngread.png 我又在服务器中查询了容器的日志 emqTime.pngreadTime.png info是我在API中导出的日志,debug是strapi框架自带的API日志。 有大佬能指点一下小弟我吗

3 回复

这些分析对找问题基本没用。首先应该找下大方向,首先在docker记录CPU使用率,内存使用量,再看看数据库读写时间,看看是哪个环节卡住了呗

@zy445566 容器的CPU使用率非常高,并发测试的时候达到200%,内存使用量却很低。无论是有没有数据库读写的接口,在ab压测结果分析中,epollpwait占了最久的时间 压测结果.png,但我在接口中并没有进行任何IO操作啊

如果是CPU飙,那导出火焰图看看哪个方法拖慢了,优化下那个方法的算法或看看是否有大循环呗。但是如果只是单纯压测导致CPU高,那就没什么意义了,那扩扩机子,多开或伸缩容器负载好了

回到顶部