普通

  • set key value

  • get key

  • 以及上一篇写的一些指令

追加字段

1
2
3
4
5
6
7
8
9
# append
# 如果要加入空格,就要使用 " "
flushall # 清空所有数据库
set name hello
get name # output : hello
append name " world"
get name # output: hello world
append name world
get name # output : hello worldworld

获取字符串长度

1
strlen key

自增

1
2
3
4
5
6
7
8
9
10
11
12
# 自增1
set views 0
incr views
incr views
get views
-- output : 2

# 自增其他数量
incrby views 10

# 自减和自增相同
decr / decrby

获取特定序列下的字符串

闭区间–左闭右闭

1
2
3
4
set name "hello,world"
# GETRANGE key start end
GETRANGE name 0 3 # output : hell
GETRANGE name 0 -1 # output : hello,world

替换指定位置开始的字符串

闭区间–左闭右闭

1
2
3
继承上面的set设置
#SETRANGE key start value
SETRANGE name 1 xx # output : hxxlo,world

设置存在及过期时间

1
2
3
4
5
6
7
# setex - set with expireTime 
# 设置过期时间
setex key value expiretime
# 相当于
# set key value
# expire key time
# 你可以用 ttl key来判断她的过期时间

设置-如果不存在

1
2
3
4
5
6
# setnx - set if not exist
# 继承上面的所有数据
setnx name "hhelo " # output : false 因为原Key存在
# 现在
flushdb
setnx name "heheh" # true

批量 设置- 获取

1
mset key1 value1 key2 value2 key3 value3
1
mget key1 key2 key3 

进阶–对象使用

key – {object}:{id}:{property}

1
2
3
4
5
6
7
8
9
10
11
12
13
flushdb

keys *

flushall

keys *

mset user:1:name "whz" user:1:age 18

keys *

mget user:1:name user:1:age

更新–设置获取

1
2
3
4
5
6
7
8
9
10
11
flushall

keys * # output : nil

set user haha # output : ok

get user # output : haha

getset user wawa # output haha

get user # output : wawa

应用场景

  • 缓存对象

  • 常规计数

  • 共享 Session信息

    通过Session中的部分信息获取相应Redis中的信息,从而对服务器进行操作