V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhoudaiyu
V2EX  ›  Java

在高负载的生产环境下开 arthas 来 debug 会对性能产生很大损失吗?

  •  
  •   zhoudaiyu · 363 天前 · 1904 次点击
    这是一个创建于 363 天前的主题,其中的信息可能已经有所发展或是发生改变。
    以前随便 debug ,直到有个架构师说会有较大的影响,甚至会让程序夯死,导致业务 Pod 探活接口访问失败从而导致重启,现在有点害怕了。
    10 条回复    2023-04-29 21:12:54 +08:00
    perfectlife
        1
    perfectlife  
       363 天前
    都高负载了 你不开 arthas 一样会导致业务 Pod 探活接口访问失败从而导致重启,况且不用工具调试怎么去找到高负载的问题
    ysweics
        2
    ysweics  
       363 天前   ❤️ 1
    qoo2019
        3
    qoo2019  
       363 天前
    @perfectlife 高负载,又不是负载异常
    documentzhangx66
        4
    documentzhangx66  
       363 天前
    在生产环境下调试的正确姿势是日志分级与全链路日志,而不是使用 debug 工具。
    WillingXyz
        5
    WillingXyz  
       363 天前
    确实存在,遇到过
    hengyunabc
        6
    hengyunabc  
       363 天前
    😂,开发者来回答下这个。
    本质上是 Arthas 的能力太强,理论上你可以随意暴力搜索对象,随意函数调用。这把锋利的工具产生的后果取决于使用的人。
    上面提到的 issue 有很清楚的说明: https://github.com/alibaba/arthas/issues/44#issuecomment-569007710
    zhoudaiyu
        7
    zhoudaiyu  
    OP
       363 天前
    @perfectlife 负载高而已,属于接近满载
    @ysweics 这个我看过啦,但是已经迭代了 4 年了,不知道有优化没
    @documentzhangx66 有时候性能问题,必须得用工具 debug
    @WillingXyz CPU 不够用了吧,应用变慢了
    @hengyunabc 大佬,你好,我觉得等下次压测的时候试一把,看看到底有多大影响😁
    winv87
        8
    winv87  
       363 天前
    都高负载了,重启前排查一下也不是不行。 我有一次高负载,Arthas 都进不去。
    perfectlife
        9
    perfectlife  
       362 天前
    @qoo2019 高负载时候就绪探针探测失败很常见
    Aresxue
        10
    Aresxue  
       361 天前
    看 debug 做了什么,一般来说 trace 和 stack 是相对安全一些,watch 的话要小心一些如果 watct 的出入参很大会对系统造成一定的压力,建议书写表达式只获取自己关心的值而不是所以出入参,尤其是一些调用量很大的函数,建议使用-n 把 watch 次数限制的比较小,比较极端的情况下是会造成程序的卡死的,但一般情况下是不会的,自己根据业务核心程度和业务量判断一下,还有提醒各位小伙伴操作完以后记得 stop 啊,我发现 90%的小伙伴都没有 stop 的习惯。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5529 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 06:43 · PVG 14:43 · LAX 23:43 · JFK 02:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.