String是redis五大基本数据类型之一,即字符串, 本篇文章将对String类型进行简单讲解。
在开始基本数据类型讲解之前我们先了解一些基本同用命令:
set 存值
get 取值
keys* 查看所有key
exists name 判断name是否存在
del name 删除name
expire name 10 设置name10秒后过期
ttl name 查看name多久后过期
type name 查看name的数据类型
(更多命令可在redis官网查看,不需要全部背下来,随用随查)
string基本命令
String作为常用数据类型,不仅能存字符串,也可用于存数字,例如充当计数器,统计数量之类。以下为常用命令:
append key "hello" 在key后面追加字符串,如果key不存在就视为set key
strlen key 获取字符串key的长度
incr key 使key自增1
decr key 使key自减1
incrby key 10 使key自增指定的整数值(10)
decrby key 10 使key自减指定的整数值(10)
getrange key 0 3 获取key的指定字符串,从0开始
setrange key 1 xxx 把字符串key从1开始的地方替换为xxx(指定字符串)
setex 如果key存在则设置过期时间
setnx 如果key不存在就设置key,存在就失败
mset 批量设置值(空格分开)
mget 批量获取值(空格分开)
msetnx 批量设置,不存在时设置,存在就不设置(注意此操作为原子操作,即要么都成功,要么都不成功)
getset key 先get再set,key不存在则返回nil,存在就返回key并设置新的key
string也可用于存储对象,例如:
mset user:1:name 张三 user:1:age 2
mget user:1:name user:1:gae
(更多命令可通过redis官网查看)
使用场景举例
例如有一个博客网站,需要为每篇文章设置浏览量,当用户点击文章时,使浏览量自增1,若使用传统的关系型数据库,例如mysql,每当有人点击文章时,执行sql使对应数据更新必然麻烦,若某一瞬浏览量激增,数据库压力必将剧增,而redis运行于内存中,可高速执行数据操作,我们先设置view代表浏览量或播放量,每当作品被浏览播放,使view自增1,即可实现简单的计数,redis中的数据可于之后进行持久化存储。