百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[国内信息] 爬虫对服务器有什么影响具体分析下 [复制链接]
查看:302 | 回复:1

1688

主题

1689

帖子

0

积分

落伍者(一心一意)

Rank: 1

贡献
25
鲜花
0
注册时间
2018-9-12

落伍手机绑定

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

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

  
       需海内外高防服务器的请咨询自由互联熊大 企业QQ:3008731641

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

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

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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

658

主题

3万

帖子

6875

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
4256
鲜花
9
注册时间
2010-2-26

落伍手机绑定落伍者

发表于 2020-12-11 15:02:01 | 显示全部楼层 来自 中国江苏苏州
这个服务器高级
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-11-27 12:36 , Processed in 0.071689 second(s), 32 queries , Gzip On.

返回顶部