python运行过程中占用内存越来越大_Python 程序运行时CPU和内存高解决思路

这篇文章是基于上篇文章的续章~

一台机器要部署很多爬虫,每天定时执行的情况下,服务器CPU和内存占比较高的情况出现后

模拟一份代码,进行分析。

5c035ee8cc417584135a02c71274b177.png

一个简单的爬虫程序,爬取10页数据共计150条,每天定时写入数据库

总共不到150行,没运行期间内存已经20%多了,运行期间内存会涨到60%,CPU会涨到40%左右

一个简单程序如此高的消耗肯定是有问题的,参考了网上的一些文章

有使用工具的,安装第三方包的,写时间判断的等等

但是对我的帮助不大(windows....)

努(带)力(薪)工(拉)作(*)之后,根据看过的文章思考了一番:1.内存和CPU高代表着程序当中的部分代码在大量或反复的执行2.爬取的时间3-4秒,写入MYSQL数据库,解析使用的XPATH,

保存数据使用的单表,索引只有ID和URL,表结构数据长度都合适3.使用了线程,线程数4个4.没有文件读写操作,网络请求较快,对方服务器响应较快5.使用了schedule定时模块6.对后台接口进行任务轮询和定时模块当中出现了while True

还有文章提到判断导入的模块是否时c写的,导致底层频繁调用,首先这个说法不说对不对...一是不会看,二是看了不也得用这个模块吗

所以不考虑这种情况1.部分代码在大量或反复的执行,具体是哪里差

你可能感兴趣的:(python运行过程中占用内存越来越大_Python 程序运行时CPU和内存高解决思路)