讲下背景
从对单一数据库的操作(增加索引)。演变多台数据库服务器操作(所谓的数据读写分离)-再到引入缓存。
操作命令
基本命令 get,set,getset
批量操作 mget,mset
超时设置 setex (秒),setpx(毫秒),ttl key查看过期时间
设置判断命令。setnx(新增会自动判断,有则不会覆盖原有)set key value xx(用于更新 如果不存在也不会插入这个健)
字符追加 append ,字符长度 strlen
增减运算 incr decr 。固定值 incrby key nmber, inderc key number 体现了redis的原子性
字符查找 getrange a 0 1 ,setrange a 0 v
内部存储类型
redis自行判断
0-9 int
9-39 embstr
39以上 raw
注意:一个中文在redis占用字节数为3字节,一个String类型的值最大可存储512M。
应用场景:
访问量计数。
分布式session同步(即所有服务的session都统一在redis读取)。
短信验证码限速(一分钟发送短信的频率)。
图片储存