我目前正在开发一个使用Express.js实现的Node.js应用。商务很简单,只需发送静态JSON数据和响应。但是当我用ApacheBench测试性能时QPS很差,只有1000q / s左右,这台机器是24核/ 96Gb,测试期间CPU使用率在3~5%左右,网络I / O也很低。瓶颈在哪里?
感谢。
答案 0 :(得分:1)
如果没有看到代码示例,很难判断... Node.js是单线程,因此当你增加内核数量时它不会“自动缩放”。您可以尝试使用Cluster生成多个进程。但是,如果您的资源是静态的,则应考虑使用Express static middleware进行投放,或考虑例如nginx用于此目的。