OJ开发受阻,先了解一下新玩意redis,只列出最基本的用法,作为我个人的了解

以下实际应用来自Redis开发与运维

redis用法

❤字符串

1.缓存

redis最常用的应用就是作为缓存层为存储层MySQL减负

if(redis.get(str) != null)...

2.共享Session

暂时用不着

3.计数

return redis.incr(key)

❤哈希

1.替换SQL持久化

书P36

法1 多个key

按照key=列,value=值,再用一个更大的key来映射多个列

set user:1:name tom

set user:1:age 13

set user:1:city beijing

set user:2.....

法2

set user:1:serializae(userInfo)

法2的缺点是每个属性不能单独更新

法3:多个field

hmset user:1 name tom age 23 city beijing

❤列表

1.MQ

lpush+brpop

2.文章分页

假设文章使用哈希存储

hmset article:1 title a timestamp b content c

hmset article:2....

添加则

lpush user:1:articles article:1 article:5

分页

atricles = lrange user:1:articles 0 9

for article in {articles}
hgetall {article}

3.有限集合 lpush+ltrim

4.Stack+Queue

❤集合

1.标签

sadd user:1:tags tag1 tag2 tag6

sadd tag1:users user:1 user:2

(以上需要在同一事务进行)

删除则同理用srem

计算共同感兴趣标签

sinter user:1:tags user:3:tags

❤有序集合

注意API是score member的形式

1.排行榜!!

mike获得3个赞

zadd user:ranking:today 3 mike

之后再获得1个赞用zincrby

取消赞 zren user:ranking:today mike

展示获赞Top10

zrevrangebyrank user:ranking:today 0 9

展示用户信息和分数

hgetall user:info:tom

zscore user:ranking:today tom

zrank user:ranking mike

额外的整合资料:
https://www.cnblogs.com/qlqwjy/p/8556130.html

转载于:https://www.cnblogs.com/caturra/p/10933471.html

[无排版]redis基本数据结构的应用相关推荐

  1. Redis高级数据结构原理解析-bitmap,hyperloglog

    Redis 位图 开发过程中,我们可能遇到这种场景记录用户的打卡情况,签到情况,这些场景只有两种结果,有或者没有,加入记录的数据量比较大,比如用一年的数据,如果用Redis中普通key/value,每 ...

  2. Redis基础数据结构内部实现简单介绍

    5种基础数据结构 Redis有5种基础数据结构,分别是:String(字符串),list(列表),hash(字典),set(集合),zset(有序集合),这五种是我们开发种经常用的到的,是Redis种 ...

  3. 保存到redis的字符串类型出现斜杆_深入浅出Redis:这次从Redis底层数据结构开始...

    1.概述 相信使用过Redis 的各位同学都很清楚,Redis 是一个基于键值对(key-value)的分布式存储系统,与Memcached类似,却优于Memcached的一个高性能的key-valu ...

  4. Redis中数据结构和编码详细图解(应用场景及优缺点)

    专业术语 sds:simple dynamic string 简单动态字符串,redis自己开发的一个字符串的抽象类型 embstr:embedded sds string embstr编码的SDS, ...

  5. Redis小记——数据结构

    本文是基于<Redis设计与实现>的读书笔记. 一.命令 1. 开启服务端:redis-server redis.windows.conf 2. 开启服务端:redis-cli 3. 查看 ...

  6. 【2. Redis 高级数据结构】

    Redis 高级数据结构 Bitmaps ​ 现代计算机用二进制(位)作为信息的基础单位,1 个字节等于 8 位,例如"big" 字符串是由 3 个字节组成,但实际在计算机存储时将 ...

  7. Redis——底层数据结构原理

    摘要 Redis 发展到现在已经有 9 种数据类型了,其中最基础.最常用的数据类型有 5 种,它们分别是:字符串类型.列表类型.哈希表类型.集合类型.有序集合类型,而在这 5 种数据类型中最常用的是字 ...

  8. Redis核心数据结构List应用场景-商品列表、缓存击穿、PV阅读量、抢红包、推送帖子、普通分布式锁、Redis可重入锁与红锁

    List应用场景 Redis之List 一. Redis list命令实战 二.商品列表 高并发的淘宝聚划算实现技术方案 SpringBoot+Redis实现商品列表功能 二.缓存击穿 什么是缓存击穿 ...

  9. Redis的数据结构及应用场景

    2019独角兽企业重金招聘Python工程师标准>>> 一. 谈谈对redis的理解,它的应用场景. Redis是一个key-value存储系统,它支持存储的value类型包括str ...

最新文章

  1. 奖金+招聘绿色通道,这一届算法大赛关注下?
  2. 15年!NumPy论文终出炉,还登上了Nature
  3. 电芯容量在前期循环中容量增加_如何设计提高电池电芯的容量密度?
  4. 1920+1080+android三星手机,三星Galaxy Note3能拍摄1080p视频吗?支持1080p播放吗?
  5. 20110612 DiscuzNT代码研究(3)
  6. BufferedInputStream与ImageInputStream
  7. Elixir 初尝试 5 -- 遇见Actor
  8. git 回滚 add 操作_炫技!git 优雅回滚一次错误的合并操作!
  9. ai逻辑回归_人工智能中的逻辑是什么?
  10. 服务器维护家电需要电工证吗,物业电工需要电工证吗
  11. 腾讯智慧金融白皮书:区块链将是未来数字经济基础设施
  12. 想自学python看哪位的视频比较好-Python入门视频看哪个好?适合初学者的教学视频推荐...
  13. Quartz.net 的 FAQ
  14. Visual Studio爆炸! -VS2010 SP1 * BETA *已发布,上下文
  15. 爬虫 | 破解APP中阿里云滑动验证码
  16. 官方解决方案:WPS for Mac 云字体删除的问题,Mac版WPS已下载云字体无法删除的问题
  17. 派森诺细菌完成图+转录组+蛋白组+实验端验证高分文章
  18. 迅雷极速版服务器响应,如何阻止迅雷极速版强制更新?这个方法很简单
  19. 小白多久可以学会python?
  20. Android异步和同步的区别

热门文章

  1. 机器学习中训练集、验证集和测试集的区别
  2. .exp文件_mini_httpd 任意文件读取漏洞(附EXP脚本)
  3. python函数type的用意_python之type函数
  4. c语言的适当大小的子集,编译原理上机实验报告
  5. Javascript中函数中定义变量无var
  6. libevent java_libevent简介
  7. python pycurl_简单谈谈Python的pycurl模块_python
  8. 档案盒正面标签制作_包材工艺丨浅述模内标签印刷及材料的选择
  9. oracle dbms refresh,oracle 10g中dbms_mview.refresh()函数
  10. java ipv6正则表达式_IPV4和IPV6正则表达式的深入讲解