美文网首页
redis 学习(3)-- String 类型

redis 学习(3)-- String 类型

作者: 希希里之海 | 来源:发表于2019-05-27 10:22 被阅读0次

redis 学习(3)-- String 类型

String-结构

  • 结构:Key-Value对
  • Value:可以是字符串、数字,也可以是二进制数组
  • 限制:Value最大值为512MB

String-常用命令

命令 含义
get key 获取指定 key 的值
set key value 设置指定 key 的值
incr key 将 key 中存储的数字值增一
incrby key increment 将 key 所存储的数字值加上给定的增量
decr key 将 key 中存储的数字值减一
decrby key decrement 将 key 所存储的数字值减去给定的减量
setnx key value 只有当 key 不存在时才设置 key 的值
set key second value u设置指定 key 的值,同时设置该 key 的过期时间,单位为秒
set key value xx 只有 key 存在时才设置 key 的值
mget key1 [key2...] 获取所有(一个或多个)指定 key 的值
mset key1 value1 [key2 value2...] 同时设置一个或多个 key-value 对

演示

get key 、incr key、incrby key increment、decr key

set key value、setnx key value、set key value xx

mget key1 [key2...]、mset key1 value1 [key2 value2...]

get 和 mget 的区别



由于 redis 存储在内存中,所以我们可以知道执行命令的速度很快,即命令时间相差不大,但是网络时间涉及到网速快慢的问题,明显 mset 只请求一次网络的时间比 get 方法请求多次网络的时间开销小,效率也更高。

实战

1:

实现如下功能:记录网站每个用户个人主页的访问量?

incr userid:pageview

由于 redis 是单线程的,所以非常适合用作计数器,在高并发下没有竞争。


2:

实现如下功能:缓存视频的基本信息(数据源在MYSQL中)伪代码

业务过程如下:

伪代码:

public VideoInfo get(long id) {
    String redisKey = redisPrefix + id;
    VideoInfo videoInfo = redis.get(redisKey);
    if (videoInfo == null) {
        videoInfo = mysql.get(id);
        if(videoInfo != null) {
            //序列化
            redis.set(redisKey, serialize(videoInfo));
        }
    }
}

当我们通过 id 查找相关信息,redis 做中间层,当数据缓存在 redis 中时,我们直接返回该数据,如果 redis 中不存在,就到 MYSQL 中查找,查找成功后在返回。
(缓存在字符串中,做序列化,然后取出来,做反序列化)

3:

实现如下功能:分布式 id 生成器

incr id

(原子操作)

相关文章

  • redis 学习(3)-- String 类型

    redis 学习(3)-- String 类型 String-结构 结构:Key-Value对 Value:可以是...

  • redis 基本数据结构

    redis五种基本数据类型 1.String类型 2.列表类型list 3.集合类型 set 区别: redis集...

  • php redis 操作手册

    String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的。意思是redis...

  • redis学习系列(二)

    redis简单操作之string类型 Redis 数据类型 Redis支持五种数据类型:string(字符串),h...

  • Redis学习-string类型

    redis就是一个存储key-value键值对的仓库。 Redis的数据类型:Strings、Hashs、List...

  • SpringBoot-Redis 入门

    SpringBoot-Redis 入门 Redis 的数据类型 String 字符串 string 是 redis...

  • Redis(一)

    Redis的优势 存储优势 1. 字符类型(string) 2. 散列类型(hash) 3. 列表类型(list)...

  • Redis对象类型和底层数据结构

    Redis对象类型(类型常量:对象名称) REDIS_STRING: 字符串对象 REDIS_LIST: ...

  • redis基础

    redis 基础类型 String String: 可以存储 INT Float String setnx key...

  • Redis数据类型

    String Redis中最基本的类型。Redis中的String 类型是二进制安全的,也就是说在Redis中St...

网友评论

      本文标题:redis 学习(3)-- String 类型

      本文链接:https://www.haomeiwen.com/subject/jbwftctx.html