- 5 mins 爬虫性能之同步异步耗时对比
Table of Contents
同步耗时
在编写爬虫时,性能的消耗主要在IO请求中,在单进程单线程模式下请求url必然会引起等待,从而使得请求整体变慢
单进程单线程模式
多线程
耗时 ==> 9.92071795463562
线程池
耗时 ==> 10.068973302841187
多进程
耗时 ==> 10.076193809509277
进程池
耗时 ==> 11.25045657157898
异步 IO 耗时
Asyncio 简介
asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持,asyncio的编程模型就是一个消息循环,从asyncio模块中直接获取一个EventLoop的引用,然后把需要执行的协程扔到EventLoop中执行,就实现了异步IO
Demo
耗时 ==> 0.6783857345581055
Topaz
Always keep learning.