1.Redis 可以做什么?
1.1 记录帖子的点赞数、评论数和点击数 (hash)。
1.2 记录用户的帖子 ID 列表 (排序),便于快速显示用户的帖子列表 (zset)。
1.3 记录帖子的标题、摘要、作者和封面信息,用于列表页展示 (hash)。
1.4 记录帖子的点赞用户 ID 列表,评论 ID 列表,用于显示和去重计数 (zset)。
1.5 缓存近期热帖内容 (帖子内容空间占用比较大),减少数据库压力 (hash)。
1.6 记录帖子的相关文章 ID,根据内容推荐相关帖子 (list)。
1.7 如果帖子 ID 是整数自增的,可以使用 Redis 来分配帖子 ID(计数器)。
1.8 收藏集和帖子之间的关系 (zset)。
1.9 记录热榜帖子 ID 列表,总热榜和分类热榜 (zset)。
1.10 缓存用户行为历史,进行恶意行为过滤 (zset,hash)。
当然,实际情况下需求可能也没这么多,因为在请求压力不大的情况下,很多数据都是可以直接从数据库中查询的。但请求压力一大,以前通过数据库直接存取的数据则必须要挪到缓存里来。
2.Redis 基础数据结构
2.1 Redis 安装
2.1.1使用 Docker 安装。
通过 Github 源码编译。
直接安装 apt-get install(Ubuntu)、yum install(RedHat) 或者 brew install(Mac)。
如果读者懒于安装操作,也可以使用网页版的 Web Redis 直接体验。
Docker 方式
拉取 redis 镜像
docker pull redis
运行 redis 容器
docker run --name myredis -d -p6379:6379 redis
执行容器中的 redis-cli,可以直接使用命令行操作 redis
docker exec -it myredis redis-cli
2.1.2Github 源码编译方式
下载源码
git clone --branch 2.8 --depth 1 git@github.com:antirez/redis.git cd redis
编译
make
cd src
运行服务器,daemonize表示在后台运行
./redis-server --daemonize yes
运行命令行
./redis-cli
2.1.3直接安装方式
mac
brew install redis
ubuntu
apt-get install redis
redhat
yum install redis
运行客户端
redis-cli
2.2 Redis 基础数据结构
Redis 有 5 种基础数据结构,分别为:string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合)。