网站企业网站建设需求文档,网络软件开发专业是做什么的,自学网站的建设,阜阳公司做网站缓存定义
缓存是一个告诉数据交换的存储器#xff0c;使用它可以快速的访问和操作数据。
常见缓存使用
本地缓存的常见使用#xff1a;Spring Cache、MyBatis的缓存等
我的session存储和redis都放到缓存里面的#xff0c;所有程序不管部署多少份#xff0c;访问的都是r…缓存定义
缓存是一个告诉数据交换的存储器使用它可以快速的访问和操作数据。
常见缓存使用
本地缓存的常见使用Spring Cache、MyBatis的缓存等
我的session存储和redis都放到缓存里面的所有程序不管部署多少份访问的都是redis。 分布式缓存的常见使用Redis和Memcached
Redis常用数据类型
1、String——字符串类型使用最最最频繁相当于Java里的hashmap以key-value的形式进行存储。根据key来存储和获取value值的。
使用set k1 v1 get k1 strlen k1 #查询字符串长度 ex(expire)参数来设置字符串的过期时间 eg:设置k1 1000s 后过期(删除)
使用场景存放用户(登录)信息 存放文章详情和列表信息 存放和累计网页的统计信息
Hash——字典类型 使用hset myhash key1 value1 integer1 hget myhash key1 value
List——列表类型和Java里的数组一样
使用lpush list 1 2 3 (integer) 3 lpop list 1
Set——集合类型无序并唯一的键值集合
使用sadd myset v1 v2 v3 #添加数据 smember myset #查询计划中的所有数据
使用场景微博关注我的人和我关注的人都适合集合存储可以保证人员不会重复 中奖人信息也适合用集合类型存储这样可以保证一个人不会重复中奖。
集合类型set和列表类型list区别 列表可以存储重复元素集合只能存非重复的元素 列表是按照元素的先后顺序存储元素的而集合则是无序方式存储元素的。
ZSet——有序集合类型相比集合类型多了一个排序属性score(分值)对于有序集合ZSet来说每个存储元素相当于有两个值组成的一个是有序结合的元素值一个是排序值。有序集合的存储元素值也是不能重复的但分值是可以重复的。
使用zadd zset1 3 golang 4 sql 1 redis #添加数据 zrange zset 0 -1 #查询所有数据
持久化
Redis持久化的方式
快照方式RDBRedis DateBase将某一时刻的内存数据以二进制的方式写入磁盘文件追加方式AOFAppend Only File记录所有的操作命令并以文本的方式写入追加到文件中混合持久化方式Redis 4.0之后新增的方式混合持久化是结合了RDB和AOF的优点在写入的时候先把当前的数据以RDB的形式写入文件的开头再将后续的操作命令以AOF的格式存入文件则有既能保证Redis重启时的速度又能减低数据丢失的风险。
常见面试题
缓存雪崩
缓存穿透查询数据库和缓存都无数据因为数据库查询为u数据用于容错
Redis集群选学