解决Scrapy性能问题——案例五(Item并发太多导致溢出)

本文分析了Scrapy爬虫因每个请求产生大量Item导致性能下降和内存溢出的问题。通过调整并发设置,观察性能曲线,发现性能瓶颈可能在于CPU利用率过高或内存限制。解决方案包括降低并发数减轻CPU负担,或增加以加速pipeline处理,确保系统吞吐量匹配。若仍无法优化,需检查整个系统的支撑能力。
摘要由CSDN通过智能技术生成

症状:爬虫对于每个Response都产生了多个Item,系统的吞吐量比期望的要低,并且可能会出现和前一个案例相同的下载器开/关现象。

示例:这里我们假设有1000个请求,每个返回的页面有100个Item,响应时间为0.25s,Item在pipeline中的处理时间为3s。分别把CONCURRENT_ITEMS设置成从10到150的值来运行爬虫:

for concurrent_items in 10 20 50 100 150; do
time scrapy crawl speed -s SPEED_TOTAL_ITEMS=100000 -s \
SPEED_T_RESPONSE=0.25 -s SPEED_ITEMS_PER_DETAIL=100 -s \
SPEED_PIPELINE_ASYNC_DELAY=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值