背景
在公司的项目中用到了 redis 做缓存,前来补习一下基础知识
为什么使用 redis ,当然是因为关系型数据库使用不太方便,redis 是一种 key-value 存储系统,且其支持数据持久化,拥有高性能、高并发的特点(后面再详细解释)所以我们选择了 redis 。
数据类型
value数据类型可以是字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型
基本数据操作
1、连接 redis 服务器$ redis-cli -h host -p port -a password
例如:$ redis-cli -h 127.0.0.1 -p 6379 -a "mypass"
2、基本字符串操作
设置指定 key 的值$ SET key value
获取指定 key 的值$ GET runoobkey
删除指定 key 的值$ DEL mykey redis
3、Hase基本操作
新增一条 hash 数据HMSET hasname key1 "value1" key2 "value2" key3 20 key4 23000
查看 hash 数据HGETALL hasname
删除 hash 数据HDEL hasname key1
4、list 基本操作LPUSH runoobkey redisLRANGE runoobkey 0 10
PS : 在使用中被公司服务坑了 2 次
第一次是测试环境 redis 挂了,一个工具中依赖的数据源存储在 redis 中(当时选择存储在 redis 中是当时表结构待定,暂存),然后就导致整个服务中断,且数据不能恢复,因为本地数据有备份才得以挽救。
第二次是测试环境 redis 一个服务挂掉(需要晚上下班前才能处理) 导致各部分应用链接超时,测试环境网关服务中,路由信息缓存在 redis 中,因为数据量不大,决定去掉 redis 强依赖,将数据缓存在内存中。