V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
8e47e42
V2EX  ›  问与答

奇怪的 nodejs 延迟问题 - 哪些因素会造成 nodejs 响应严重延迟后迅速恢复?

  •  
  •   8e47e42 · 2021-08-04 15:40:19 +08:00 · 629 次点击
    这是一个创建于 1184 天前的主题,其中的信息可能已经有所发展或是发生改变。
    环境: Goolge GCP + K8s,8 个 Pods
    Nodejs LTS + Express.js LTS 最新

    行为:发送一个固定的 Json (大概~1K 左右长度)给客户,没有任何其他多余代码
    操作:模拟~20 个用户 request 同个 URL,速度速度能稳定在 10ms 以内(后台日志显示,非实际回到客户端时间),但是每隔 1 分钟会稳定的出现响应速度(实际后台处理时间)暴涨到 8x-9x+的情况(~1s )

    奇怪的是 K8s pods 从 8 个减到 1 个就不会再出现这一情况。要说 GC,8 个 pods 也 GC,1 个 pod 也 GC,为什么一个 pod 就不会有类似的延迟呢?

    求教像这样奇怪的延迟会是因为 nodejs 在轮询过程中有空闲所以会进行更深度的 GC 造成的吗?如何能比较好的 debug 这类问题呢?感谢大家。


    查看过内存:只用了<20%
    查看过 CPU:只用了<50%
    2 条回复    2021-08-05 10:20:00 +08:00
    v2byy
        1
    v2byy  
       2021-08-04 17:58:46 +08:00 via iPhone   ❤️ 1
    如果一个人 pod 没问题就不是 nodejs 的问题啊,k8s service type load balance ?
    Rrrrrr
        2
    Rrrrrr  
       2021-08-05 10:20:00 +08:00   ❤️ 1
    换成原生的 nodejs 试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4340 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 05:33 · PVG 13:33 · LAX 22:33 · JFK 01:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.