简单的介绍分布式爬虫与redis

一 什么是分布式爬虫?

1.默认情况下,scrapy爬虫是单机爬虫,只能在一台电脑上运行, 因为爬虫调度器当中的队列queue去重和set集合都是在本机上创建的,其他的电脑无法访问另外一台电脑上的内存的内容
2.分布式爬虫用一个共同的爬虫程序,同时部署到多台电脑上运行。 这样可以提高爬虫速度,实现分布式爬虫

二 分布式爬虫的前提:

1.要保证每一台计算机都能够正常的执行scrapy命令,能够启动爬虫
2.要保证所有的爬虫程序可以访问同一个队列一个set集合scrapy_redis
想要保证多台机器共用一个queue队列和set集合,scrapy中是结合scrapy_redis完成的分布式爬虫可以让所有机器上的爬虫程序,从同一个queue队列中获取request请求,并且 每个机器取出request请求的对象是不一样的,直到所有的request被请求完毕。

三 redis 的安装

1 在官网下载该文件
这里写图片描述
2 创建一个文件夹,将下载的内容解压到该文件夹
3, 终端进入redis 文件夹, 输入命令:redis-server redis.windows.conf
(可以将redis 的路径添加到环境变量,这样以后会方便一点)
这里写图片描述
4 重新打开一个终端,输入 redis-cli -h 127.0.0.1 -p 6379 , 表示连接到自己的主机 ,再设置键值对 如下图所示
这里写图片描述
(还有一个问题,环境变量配置好了,并不能在终端直接进入)
5 如果想在两个电脑间进行测试,如果想要在让B电脑连接到A电脑上,需要获取A电脑的IP, B电脑需要设置redis-cli -h A电脑ip ,
在B电脑终端输入命令get key1,就可以获取刚才A电脑上的key1值,如果出错,需要设置A电脑上的配置文件
第一个: 55行: 127.0.0.1注释掉
第二个:75行: protected-mode no 关闭保护模式
第三个 : 123 行 加上 dazmoize no 关系守护进程
这里写图片描述

redis作为缓存服务器,主要试讲数据在内存中进行缓存,但是一台几区的内存和性能是有限的, 当对于redis数据库的数据进行读写量较大的时候,那么一台reids就不能满足需求了,此时,需要将redis部署到多台机器上,用于写入数据的redis,称之为master,而只负责读取数据的redis,称之为slave
redis主从的特点
1.master只负责写入数据,slave只负责读取数据
2.当slave创建的时候,会向master发送一个同步的命令,master接受到命令以后 将数据同步给slave
3.master只能有一个,slave可以有多个

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值