Node.js 性能平台支持死循环和正则攻击定位

  1. 云栖社区>
  2. Node.js 性能平台>
  3. 博客>
  4. 正文

Node.js 性能平台支持死循环和正则攻击定位

穆客 2018-07-13 18:35:45 浏览2006
展开阅读全文

Node.js 应用里面,常见性能问题从表现上来看有这么几类(Node.js 性能平台都提供了对应解决方案):

  • CPU 飚高:做 CPU Prfiling 定位热点函数
  • 内存泄露:堆快照/heaptimeline/heapprofile进行定位
  • CPU/内存使用都不高,但是 QPS 上不去或者 RT 很长:trace进行定位

CPU 飚高的情况又可分为两类:

  • 仍然可以继续处理业务,只是 RT 变长,这可以通过 CPU Profiling 定位
  • 完全无法继续处理业务,表现为 CPU 100% 占用,堆信息监控为直线

无法处理新业务的情况,JS 代码一般处于下面几种状态:

  • while/for 循环一直运行
  • 计算一直无法完成:例如执行一个斐波那契数列运算,当输入大于 50 的时候
  • 执行长时间正则表达式,

Node.js 性能平台在运行时v3.11.3v4.

网友评论

登录后评论
0/500
评论
穆客
+ 关注
所属云栖号: Node.js 性能平台