REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
使用场景:
1.缓存系统,减轻主数据库(MySQL)的压力。
2.计数场景,比如微博、抖音中的关注数和粉丝数。
3.热门排行榜,需要排序的场景特别适合使用ZSET。
4.利用LIST可以实现队列的功能。
1.安装
https://github.com/tporadowski/redis/releases
解压即用(s-v模式)
进入解压目录>>
开启redis服务:redis-server
把redis服务放到后台当:redis-server --service-install redis.windows-service.conf --loglevel verbose
开启redis客户端:redis-cli
2.五种类型,五种常见操作
string
set runoobkey redis
get runoobkey redis
hash
hset runoobkey name "redis tutorial"
hmset runoobkey name "redis tutorial" description "redis basic commands for caching" likes 20 visitors 23000
hgetall runoobkey
hget runoobkey name
list
lpush runoobkey redis
lpush runoobkey mongodb
lrange runoobkey 0 10
set
sadd runoobkey redis
sadd runoobkey mongodb
smembers runoobkey
sismember runoobkey redis
sset
zadd runboobkey 1 redis
zadd runboobkey 2 mongodb
zrange runboobkey 0 10 withscores
3.事务管理
MULTI 开始事务
SET book-name "Mastering C++ in 21 days"
SADD tag "C++" "Programming" "Mastering Series"
EXEC 执行所有事务块内命令
4.消息发布订阅
SUBSCRIBE redisChat 创建订阅频道redischat
PUBLISH redisChat "Redis is a great caching technique" 频道发布消息