我正在开发一项服务(js
上的{node
),该服务主要是异步操作(通信和协调s3
,mongodb
和rabbitmq
)。
在低负载下,尽管cpu
很低,但是服务消耗了大量memory
。
我已经执行了一个简单的profiler来跟踪广泛使用的来源。
我无法分享确切的结果,因为它是在另一个环境中,
但我看到了:
Shared Libraries ticks: 78502 97.4%
[Bottom up (heavy) profile]:
ticks parent name
45000 56.7% ...nodejs/node.exe
44600 97.7% .../nodejs/node.exe
29000 65% LazyCompile ~ChildProcess.spawn internal/child_process.js
29000 100% LazyCompile ~exports.spawn child_process.js
29000 100% LazyCompile: ~<anonymous> .../node_modules/fluent-ffmpeg/lib/processor.js
11570 25% Builtin: PromiseConstructor
11570 100% Builtin: AsyncFunctionAwaitResolveClosure
32721 40% C:\WINDOWS\SYSTEM32\ntdll.dll
我正在使用节点版本为8.11的Windows10。
我可以看到ffmpeg
使用了29000个滴答声,但这仍然不是主要原因。
如何找出cpu
使用率偏高的原因?