APM Insight Python 代理性能报表
性能报表可帮助您优化 APM Insight Python 代理,使其对应用程序性能的影响最小。
测试环境
操作系统:Ubuntu 20.04.1 LTS
CPU:6 核
内存:15.3GB
版本:Python 3.8.10
应用程序 框架:Django 4.0.4测试
时间 : 两个小时
对应用程序响应时间的影响
四个示例 Python 应用程序实例在使用和不使用 APM Insight Python 代理的情况下分别以每分钟 300 和 600 个事务运行。数据是在两个小时内收集的,结果总结如下。
每分钟 300 笔事务:
响应时间摘要 |
无代理 |
有代理 |
平均响应时间 (ms) | 18852 | 19274 |
峰值响应时间 (ms) | 23406 | 24106 |
使用和不使用 APM Insight Python 代理运行应用程序时观察到的平均时间差约为 2.22%。
下面的时间线图解释了历史趋势:
每分钟 600 笔事务:
响应时间摘要 |
无代理 |
有代理 |
平均响应时间 (ms) | 37620 | 38777 |
峰值响应时间 (ms) | 47792 | 48413 |
使用和不使用 APM Insight Python 代理运行应用程序时观察到的平均时间差约为 3.05%。
下面的时间线图解释了历史趋势:
对 CPU 使用率的影响
APM Insight Python 代理的 CPU 消耗主要取决于检测的方法数量和日志级别(默认为 DEBUG)。
下面显示的数据是使用和不使用 APM Insight Python 代理并行运行的应用程序的数据汇编。
每分钟 300 笔事务:
CPU使用率 |
无代理 |
有代理 |
平均使用率 (%) | 0.49 | 0.7 |
当应用程序以每分钟 300 个事务运行时,代理平均消耗了总 CPU 使用率的 0.21%。
下面的时间线图解释了历史趋势:
每分钟 600 笔事务:
CPU使用率 |
无代理 |
有代理 |
平均使用率 (%) | 1.53 | 2.51 |
当应用程序以每分钟 600 个事务运行时,代理平均消耗了总 CPU 使用率的 0.98%。
下面的时间线图解释了历史趋势:
并且从APM Insight Python 代理版本 1.0.3开始生效。
对物理内存 (RAM) 使用的影响
默认情况下,APM Insight Python 代理每分钟都会收集性能数据并将其推送到自己的服务中,因此用户内存占用的空间很小,而且只是暂时的。这里要注意的重要事实是内存消耗与一分钟内收集的数据量成正比,因此降低采样因子或事务跟踪阈值会导致 RAM 使用量增加。
下面显示的数据是使用和不使用代理并行运行的应用程序的数据汇编。
每分钟 300 笔事务:
内存使用情况 |
无代理 |
有代理 |
平均使用率 (%) | 0.3 | 1.56 |
当应用程序以每分钟 300 个事务运行时,代理平均消耗了总内存使用量的 1.26%。
下面的时间线图解释了历史趋势:
每分钟 600 笔事务:
内存使用情况 |
无代理 |
有代理 |
平均使用率 (%) | 0.31 | 4.26 |
当应用程序以每分钟 600 个事务运行时,代理平均消耗了总内存使用量的 3.95%。
下面的时间线图解释了历史趋势: