爬虫对服务器 CPU(爬虫对服务器的影响)

爬虫对服务器 CPU(爬虫对服务器的影响)

这里介绍爬虫对服务器的影响。主要是给小白同学普及一下爬虫的基础知识。

在我们写爬虫的时候。首先会想到开多线程。如果使用的语言是Python。很不幸。因为Python存在 GIL,在任何时候。CPU内只有一条线程在运行。但是Python的多线程也能提高爬虫的速度。并且我们用python的多线程去写爬虫的时候。速度并不慢。这是为何呢?因为爬虫是偏向于io的。网络IO和磁盘io是爬虫的最大瓶颈。现在CPU的处理速度很快。相对于请求来说。CPU的速度更快。网络请求需要等待对方服务器的响应。这个过程比较慢。而下载到数据后往自己数据库插入数据需要等待自己的磁盘响应。那么有没有一个更好的方法实现爬虫的并发下载呢?

答案是 : 有。我们可以使用第三方的框架。比如使用异步框架 gevent。tornado等。或者是Python的多进程+ 异步方法。可以大大的提高我们的下载速度。

直接粘贴两张图片。第一种是消耗CPU和内存和带宽。第二张图片是多进程使用。第一种图片第二种图片

在爬取某个网站的时候。同时开启了64个进程。并且是异步的方法。下载速度稳定在700k左右。因为公司运维给网络限速了。不可能提高网速了。然后是内存消耗是87%,内存是12G。CPU消耗是百分之百。CPU消耗为何这么高呢?主要是数据解析需要消耗CPU和进程切换也需要消耗CPU。一个网页的大小应该在10k到20k之间。粗略统计一下。一分钟能下载1750个网页。包括数据的下载。解析和入库整个过程。这个下载速度是1750*60分钟 等于105000。也就是说一个小时是能下载十万个网页。

这个速度怎么样?我觉得这个下载速度是非常的慢。为何。因为这个网址他封ip了。需要通过代理去访问他们的服务器。这也是非常耗时的一个过程。只能通过ip池去解决。ip池里面维护了1000左右有效ip。并且有专门的服务去做验证。可以随时抽取一个ip去抓取目标网站。理想的状态是一分钟抓取3000条数据。一天24小时抓取500万左右个网页数据。

小伙伴是不是很惊讶?网络百分之九十的流量都是爬虫给贡献的。爬虫给目标网站造成了不小的压力。为了避免给目标网站造成破坏。不建议开启过多的并发。

渲大师专业提供python爬虫ip代理服务器。千万ip库。随便切换;十七年的IDC行业服务经验;拥有全球超过120个国家地区的数据中心!详询渲大师客服电话 。

分享到 :
相关推荐

如何选择租用美国服务器更可靠(如何选择租用美国服务器更可靠呢)

选择租用美国服务器的选择因素:1.租用美国服务器之前先看机房的资质。选择能够提供2[...

选择便宜的海外vps要注意哪些问题

选择便宜的海外vps要注意的问题有:1。测试网站的稳定性。保障网站的安全性;2。测试...

国外专用服务器为什么这么受欢迎(国外专用服务器为什么这么受欢迎呢)

国外专用服务器受欢迎的原因有:1。国外专用服务器无需备案。能节省建站的时间成本;2。...

云服务器上dns解析失败是什么意思(DNS服务器解析失败)

云服务器dns解析失败可能是云服务器DNS设置不正确或云服务器未获取到DNS地址。解...

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注