我试图确定为什么我的nodejs服务器具有极高的CPU使用率。当运行top时,我可以看到节点的CPU使用率可以达到单个用户的60%。我使用node-tick来分析我的应用程序,但我似乎无法很好地理解结果以找到问题的根源。
我正在使用:
socket.io
mongodb
jade-templating
express
结果如下:
[Shared libraries]:
ticks total nonlib name
31273 88.5% 0.0% b77b7000-b77b8000
2144 6.1% 0.0% /usr/local/bin/node
269 0.8% 0.0% /lib/i386-linux-gnu/libc-2.15.so
45 0.1% 0.0% /lib/i386-linux-gnu/libpthread-2.15.so
13 0.0% 0.0% 2cd46000-2cd47000
11 0.0% 0.0% /usr/lib/i386-linux-gnu/libstdc++.so.6.0.16
2 0.0% 0.0% /lib/i386-linux-gnu/librt-2.15.so
我似乎无法找到这个" b77b7000-b77b8000"和谷歌没有产生很多结果。
任何人都可以确定导致我的node.js使用这么多CPU时间的原因吗?
答案 0 :(得分:0)
物理内存使用情况怎么样?这是正常的吗?
我遇到了同样的问题。就我而言,CPU和物理内存使用量很高。我试图将大量数据批量插入mongo db。
我从代码中删除了for循环。然后我发现CPU和内存使用量发生了巨大变化。他们降低到正常率。 For循环增加了RAM和CPU使用率。它继续增长。像这样,你的代码中是否有任何使用大量内存和cpu的内容?
答案 1 :(得分:0)
Yo可以使用分析器来检查功能的堆栈功能。在我的选项中,Chrome是最好的。 Here是关于如何将其与nodejs一起使用的教程