1 介绍

Redis(Remote Dictionary Server)是一个开源的内存数据存储系统,可以用作数据库、缓存和消息中间件。它支持多种数据结构,包括字符串(strings)、哈希表(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。

2 使用场景

  • 相对于使用数据库,它读取更方便,时间更短
  • 相对于存储在硬盘上,它可供不同机器上的不同客户端读取。

3 使用方法

3.1 安装运行

1
2
$ docker pull redis
$ docker run --rm -d --net host redis

默认端口是 6379

3.2 Python 客户端

1
2
3
4
5
6
7
8
9
10
11
12
13
import redis

redis_client = redis.StrictRedis(host='localhost', port=6379, decode_responses=True)

# 尝试从缓存中获取结果
cached_result = redis_client.get(f'test:01')

if cached_result is not None:
print(f'从缓存中获取结果: {cached_result}')
else:
# 将结果存入缓存,设置过期时间为 60 秒
print(f"写入redis")
redis_client.setex(f'test:01', 60, 8888)

上述程序第一次运行时,写入 redis;60 秒内再次运行,可从 redis 读出数据;60 秒后数据失效,调用时再次写入……

其中 setex 函数参数为:key, time, value。