今天介绍几个与性能分析和系统监控相关的Python库:cProfile
、line_profiler
,以及psutil
。每个库都有其独特用途,适用于不同层面的性能优化和监控。
1. cProfile
简介: cProfile
是Python标准库中的一个性能分析工具,主要用于分析程序运行时的性能瓶颈,如函数调用次数、总时间消耗等。它是一个统计型剖析器,对程序的运行时性能影响相对较小,非常适合初阶到中阶的性能调试。
基本使用:
import cProfile
def my_function():
sum = 0
for i in range(1000000):
sum += i
return sum
cProfile.run('my_function()')
上面的代码会打印出my_function
运行时各部分的性能统计信息,包括调用次数、累计时间和调用者信息等。
运行之后,竟然报错了:
Python 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>
============== RESTART: C:\Users\Administrator\Desktop\cProfile.py =============
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\cProfile.py", line 1, in <module>
import cProfile
File