Redis教程

Redis

本文主要是介绍Redis,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Redis的五大数据类型

Jredis是redis的java客户端,将这些命令用java里的方法体现出来
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

Redis-Key

set name //创建属性
keys * //查看键
flushall //清空所有数据库
select 1 //选择使用下标为1的数据库
exists name //存在结果为(integer)1 不存在就是(integer)0
move name 1 //将name 移到数据库1
get name //获取name 属性
expire name 10 //设置name存在的时间为10秒钟 并倒计时
ttl name //查看name存在的剩余时间 当为负数时 name的值为空(nil) time to live
type name //查看name 数据类型
append key “hello” //在key的值的结尾添加字符串hello
strlen key //获取字符串的长度
incr key //key的值自动加一 ++
decr key //key的值自动减一 –
incrby key 10 //key的值自动加10
decrby key 10 //key的值自动减10
getrange key 0 3 //截取字符串下标0-3的部分 如果是截取全部就是 getrange key 0 -1
setrange key 1 xx //从字符串下表为1的地方开始替换为xx
setex key 1(set with expire)//设置过期时间
setnx key 1(set if not exist) //不存在设置 如果ket不存在设置成功返回1 如果key存在设置不成功返回0 分布式锁经常用
mset k1 v1 k2 v2 k3 v3 //批量设置k1 k2 k3
mget k1 k2 k3 //同时获取多个值
msetnx k1 v1 k2 v2 k3 v3 //批量性不存在设置 具有原子性,要么都成功,要么都失败
getset //先get再set,get出set之前的值 更新的操作

String(字符串)

在这里插入图片描述
String类似的使用场景:value除了是我们的字符串还可以是我们的数字

  • 计数器
  • 统计多单位的数量 uid:1528183367:fllow 0
  • 粉丝数
  • 对象缓存存储

List

基本的数据类型,列表,list可以作为栈、队列、阻塞队列
所有的list命令都是用l开头的
在这里插入图片描述

lpush //将一个值或者多个值,插入到列表头部
rpush //将一个值或者多个值,插入到列表尾部 left right
lpop list //移出list左边第一个元素
rpop list //移出列表右边第一个元素
lindex list 1//获取列表下标为1的元素 ,下标是从0开始的
lrange //通过区间获取具体的值 0 -1 就是获取全部值
llen //列表list的长度 list length
lrem list 1 one //移出list中的one 并且移出1个
lrim list 12 //截取指定的长度 并显示 作为原来的,阶段了只剩下了截取的元素
rpopl push //移出列表最后一个元素并把它移动到新的列表中
lset list 1 item //将list下标为2的数字改为item 更新操作
linsert list before “world” “other” //再list列表里 world 字符串前面插入other (把before换成after也可以)
堆栈是先进的后出
队列是先进的先出
在这里插入图片描述

这篇关于Redis的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!