如何查找慢速方法
编辑如何查找慢速方法
编辑在诊断应用程序减速时,识别有问题的服务只是成功的一半。幸运的是,Elastic APM Java 代理提供了多种方法来获取代码的 方法级洞察。这可以帮助您诊断由于繁重的计算、低效的算法或类似与服务之间交互无关的问题而导致的缓慢请求。
如果您不知道要监控哪些方法……
编辑基于采样的分析器
编辑通过定期使用基于采样的分析器记录正在运行的方法,找出导致应用程序变慢的代码部分。
非常低的开销。
无需更改代码。
不适用于 Windows 和 OpenJ9。
分析器推断的跨度的持续时间不是精确的测量值,只是估计值。
如果您知道要监控哪些方法……
编辑API/代码
编辑使用 API 或 OpenTracing 桥手动为感兴趣的方法创建跨度。
最灵活。
API 使用不正确可能会导致无效的跟踪(范围泄漏)。
注解
编辑可以在方法顶部放置注解以自动为其创建跨度。
比 API 更简单、更可靠。
单独使用灵活性较差,但可以与 API 结合使用。
基于配置的
编辑使用配置选项指定要检测的其他方法。
无需修改源代码。
可以监控第三方库中的代码。
通过通配符匹配方法。
易于过度使用,从而影响运行时和启动性能。