文档中心>腾讯云可观测平台>应用性能监控>参考信息>腾讯云增强版 OpenTelemetry Java 探针压测报告

腾讯云增强版 OpenTelemetry Java 探针压测报告

最近更新时间:2024-09-03 16:10:31

我的收藏
腾讯云增强版 OpenTelemetry Java 探针通过运行态字节码增强,实现了零代码侵入的应用性能管理能力。字节码增强技术会对应用产生一定的性能开销,这是所有采用类似技术的应用性能管理方案都无法避免的。但腾讯云可观测团队在探针中引入了多项重要优化技术,将探针的性能开销控制在极低的范围内,打消了用户对于探针影响应用性能与稳定性的顾虑。
在本篇压测报告中,我们基于真实场景模拟腾讯云增强版 OpenTelemetry Java 探针在不同业务流量下产生的性能开销,您可以参考本篇压测报告,对 APM 产品的最终造型进行充分评估。

测试用例

本次测试所采用的场景和方式,基于 SkyAPMTest 开源社区的探针性能测试项目 实现,您可以前往社区获取项目的源代码。该项目基于 Spring 框架编写了应用程序,包含 Spring Boot、Spring MVC,模拟的 Redis 客户端,HikariCP 连接池(匹配模拟的 MySQL 客户端)。接入腾讯云增强版 OpenTelemetry Java 探针后,对于每个事务,探针会抓取5个 Span (1个 Tomcat 调用、1个 Spring MVC 框架调用、2个 Redis 请求和1个 MySQL 请求)。
应用部署环境:基于 TKE 部署,2核4G Pod;
测试地域:北京
测试时长:10分钟
探针版本:2.3-20240720
业务流量:500, 1000, 2000, 4000。

基线性能指标

在不接入 APM 的情况下,性能表现如下:
业务流量(TPS)
CPU 利用率
内存利用率
平均响应时间(ms)
500
32.83%
24.30%
182
1000
32.88%
26.09%
370
2000
32.95%
26.70%
752
4000
32.52%
30.59%
1522

安装探针后的性能指标

应用接入 APM 后,性能表现如下:
业务流量(TPS)
CPU 利用率
内存利用率
平均响应时间(ms)
500
39.38%
33.42%
201
1000
39.57%
32.03%
418
2000
39.68%
33.13%
859
4000
39.69%
35.77%
1730

探针性能开销

对比安装探针后的性能指标以及基线性能指标,探针产生的性能开销如下:
业务流量(TPS)
CPU 利用率
内存利用率
平均响应时间(ms)
500
+5.96%
+9.12%
+19
1000
+6.69%
+5.94%
+48
2000
+6.73%
+6.43%
+107
4000
+7.16%
+5.18%
+208

总结

探针产生的 CPU 和内销开销,在10%以内。
探针会对请求响应时间带来一定的影响,但都在毫秒级别。