(六)6-5redis安装和使用

redis的概念:
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。

redis安装
官网下载redis安装包redis-3.2.11.tar.gz
解压下载安装包cd /usr/local/src/redis-3.2.11然后执行make PREFIX=/usr/local/redis install
redis启动
cd /usr/local/redis
./bin/redis-server conf/redis.conf
通过进程和端口检查redis是否正常
ps aux |grep redis
netstat -lnp |grep redis

redis简单操作
redis是以key-value的形式存储的,所以我们在操作的时候。首先我们将redis所在主机的ip和发布端口作为参数实例化了一个对象r,然后执行set('cnblogs','http://www:cnblogs.com'),通过keys()就是获得多有key值。

例:

import  redis
redis_config = {
    "host" : "192.168.88.100",
    "port":6379
}
r = redis.Redis(**redis_config)
# r = redis.Redis(host="192.168.88.100",port=6379)
r.set("cnblogs","http://www:cnblogs.com")
print(r.keys())
print(r.get("cnblogs"))

运行结果:

['cnblogs']
http://www:cnblogs.com

连接池使用
redis-py使用connection pool来管理对一个redis server的所有连接,避免每次建立、释放连接的开销。默认,每个Redis实例都会维护一个自己的连接池。可以直接建立一个连接池,然后作为参数Redis,这样就可以实现多个Redis实例共享一个连接池

import  redis
redis_config = {
    "host" : "192.168.88.100",
    "port":6379
}
pool = redis.ConnectionPool(**redis_config)
r = redis.Redis(connection_pool=pool)

r.set("cnblogs","http://www:cnblogs.com")
print(r.keys())
print(r.get("cnblogs"))

运行结果:

['cnblogs']
http://www:cnblogs.com

redis管道
Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。

原文地址:https://www.cnblogs.com/pythonlx/p/7892706.html