栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

redis 理论汇总

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

redis 理论汇总

介绍:
  1. redis AOF持久化文件检测和修复文件 #redis-check-aof文件
  2. redis RDB持久化文件检测和修复文件 #redis-check-dump文件
  3. 启动redis哨兵 #redis-sentinel文件
  4. redis是单线程
  5. redis是一个内存数据库,在宕机或者挂机时重启会使数据丢失
一、基本命令
1)#查看所有的键
keys *

2)#键总数
dbsize

3)#检查键是否存在
exists key

4)#删除键
del key

5)#键过期
expire key seconds

ttl命令会返回键的剩余过期时间, 它有3种返回值:

大于等于0的整数: 键剩余的过期时间。
-1: 键没设置过期时间。
-2: 键不存在

6)#键类型
type key
二、String类型命令
1)#设置值
SET key value [EX seconds] [PX milliseconds] [NX|XX]

ex seconds: 为键设置秒级过期时间。
px milliseconds: 为键设置毫秒级过期时间。
nx: 键必须不存在, 才可以设置成功, 用于添加。
xx: 与nx相反, 键必须存在, 才可以设置成功, 用于更新。

#简化set操作,设置值并设置过期时间
setex key seconds value

拓展:基于set命令设置的复杂性,redis提供了setxx 和 setnx 两个命令用户简化操作

setxx 和 setnx 在实际中有什么应用场景吗?
以setnx 命令为例子,由于redis的单线程处理机制,如果有多个客户端同时执行setnx key value ,根据setnx 的特性只有一个客户端能设置成功,setnx 可以作为分布式锁的一种实现方案,redis官方给出了使用setnx实现分布式锁的方法。

setnx 设置值,只有key不存在的时候才设置成功

2)#获取键值
get key

3)#批量设置键
mset key1 value1 key2 value2 ...

4)#批量获取键
mget key1 key2 ...

5)#计数
incr key

incr命令用于对值做自增操作, 返回结果分为三种情况:

值不是整数, 返回错误。
值是整数, 返回自增后的结果。
键不存在, 按照值为0自增, 返回结果为1。
除了incr命令, Redis提供了decr(自减) 、 incrby(自增指定数字) 、decrby(自减指定数字) 、 incrbyfloat(自增浮点数)

其他不常用命令

6)#向尾部追加值
APPEND命令,向键值的末尾追加value。如果键不存在则将该键的值设置为value,即相当于 SET key value。返回值是追加后字符串的总长度。
append key value

7)#获取字符串长度
strlen key
三、Hash类型

1)#设置值

HSET key field value

例如: 

HSET USER NAME XIAOCILAO


2)#取值
HGET key field

例子:

HGET USER NAME

3)#删除Field
HDEL key field

例子:

HDEL USER NAME

4)#计算Field个数
HLEN key

例子:
HLEN USER

5)#批量获取值
HMGET key field

例子:
HMGET user name age phone

6)#批量设置值
HMSET key field1 value1 field2 value2

例子:
HMSET user1  name lisi age 28 phone 12345

7)#判断field是否存在
HEXISTS key field

例子:
HEXISTS user name
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/687039.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号