关于分布式的实验,由于缺乏环境,所以只有先放弃实验部分,等以后有机会我会把坑填好的。那么就主要说一下理论吧。
为啥需要分布式抓取?
- 提高抓取效率
- 数据分析的需要
- 周期性任务的需要(无需人工监控,本地操作对节点服务器不影响)
两种常见分布式实施方法:
- RPC服务
- Celery服务
两种方法实例既可以部署在windows上,也可以部署在linux上。本地计算机作为分派任务的服务器;4台独立ip的阿里云作为节点服务器,1G内存、单核2.3G处理器、10MB/s带宽、40G硬盘
RPC分布式抓取思想:在云端或本地局域网内的机器运行RPC服务器,服务器提供写好的函数供调用,可以编写各种函数,如抓取函数。需要抓取时,只要编好程序,调用这些服务器提供的程序即可,就好像在本地调用一样
Celery分布式抓取思想:书中竟然省略了(我实验完成后会补上这部分)
如果实验的话,本地局域网3台不同ip的电脑就行。实在不行,那就用虚拟机搭建一个有两个机器的局域网