Linux下redis+Python笔记2

本文介绍如何配置Redis服务端以支持分布式爬虫应用,包括安装与配置Redis、设置密码、后台运行、允许远程访问及环境变量配置。同时,详细讲解通过Python脚本连接Redis数据库的方法,以及在云服务器上开放安全组以确保远程访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一篇笔记在这 https://blog.csdn.net/weixin_42744102/article/details/99682461

服务端设置、配置redis

项目需求是分布式爬虫,多个节点获取共享数据,用redis数据库再好不过了
首先安装redis,安装方法在上一篇笔记中。
安装好之后需要配置redis,方法很简单,打开redis.conf文件,修改三个东西:密码是否能够后台运行允许链接的ip地址
密码,找到requirepass 这一行,在这一行后面加一个空格输入自定义的密码即可。(原来会有一个密码就删掉,写上自己的)
能否后台运行,修改 daemonize 这一行,把no改成yes
允许连接的地址,修改bind 127.0.0.1这一行,在前面加#去掉,即可允许所有ip入度访问。
好了,现在,我们把redis的工具添加到环境变量中。上一笔记里面用alias方法将redis强行关联redis-server的方法并不雅观,在这里用最典型方法:

export PATH=$PATH:/usr/local/redis/bin

之后在终端直接输入redis-server就可以开启redis的服务端。
输入redis-cli可以进入redis的客户端。
在进入redis客户端后,可以使用set <key> <value> 如set test “1” 这样的语句,意思是在数据库中增加一个key叫test,这个key的value是“1”。
redis默认存储的数据库是db=0(第0号数据库)
当执行添加key操作时,可能会报权限不够(auth error),解决方法很简单,先输入 auth <password>回车,返回OK就可以了。(这个password就是上面自己定义的requirepass的值)

云服务器开放安全组

我使用的是腾讯云服务器,云服务器的端口一般都在安全组里面控制着,需要配置了安全组才能使用放通某个特定的端口。很多人用本地机器连不到云服务器的某个服务,很可能都是这个问题。
redis的服务端端口开启后默认为6379,需要到云服务器供应商的控制台配置安全组,0.0.0.0/0 TCP:6379 这样就可以了

使用本地python脚本连接

redis数据库配置好了,万事俱备,现在就要发挥它的作用了。
redis加python可以搭建分布式爬虫,并且轻松从一个节点获取每一个节点的状态,redis相当于是一块共享的内存空间,需要注意的可能会出死锁问题(俗称科学家进餐问题,这里不多讲)。
首先 pip install redis
可以使用普通的连接方式,如

# coding:utf8
import redis

if __name__ == '__main__':
    red = redis.Redis(host='<你自己的redis服务器的ip地址>', port=6379, db=0, password='<你设置的password>')
    print red.get('test')
>>> "1"

这样就可以了。现在就可以尽情的进行数据存储了。
在连接数量较多的时候,建议使用连接池进行连接,这样会可靠很多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值