Redis几种常用类型的使用场景
1.字符串类型(String)
Redis 字符串是字节序列。Redis 字符串是二进制安全的,这意味着他们有一个已知的长度没有任何特殊字符终止,所以你可以存储任何东西,512 M为上限,主要的还是操作键值对。
常用使用场景:
①.缓存信息:
将要储存的信息序列化成字符串,然后将字符串存入redis的value中;通常用于缓存用户的基本信息。将用户的ID存入key中,将其他信息序列化后存入value中。
2.列表类型(List)
Redis 的链表是简单的字符串列表,排序插入顺序。
常用使用场景:
①.秒杀抢购:
将商品ID作为key,将商品数目最为value。
3.数据类型(Hash)
Redis 的哈希是键值对的集合。
Redis 的哈希值是字符串字段和字符串值之间的映射,因此它们被用来表示对象,还有用户信息之类的,经常变动的信息。
Hash更适合用于对象的存储,String更适合字符串存储。
常用使用场景:
①.保存信息:
hash字典类型也是比较适合保存结构体信息的,不同于字符串一次序列化整个对象,hash可以对用户结构中的每个字段单独存储。这样当我们需要获取结构体信息时可以进行部分获取,而不用序列化所有字段,而将整个字符串保存的结构体信息只能一次性全部读取。
4.集合类型(Set)
Redis 的集合是字符串的无序集合。
在Set集合当中,是不允许有重复的。
常用使用场景:
①.去重的场景:
例如视频点赞,key为视频的ID,value为点赞用户的ID,从而记录这个用户是否点赞、统计有哪些用户点赞了。
5.有序列表(Zset)
Redis 的有序集合类似于 Redis 的集合,字符串不重复的集合。
常用使用场景:
①.各种热门信息:
例如微博热门,value值是这条微博的ID,score是浏览次数,这样就可以对微博信息列表按浏览次数进行排序。
Redis几种常用类型的使用场景相关推荐
- 跟我一起学Redis之五种基本类型及其应用场景举例(干了6个小时)
前言 来啦,老弟?来啦,上一篇就当唠唠嗑,接下来就开始进行实操撸命令,计划是先整体单纯说说Redis的各种用法和应用,最后再结合代码归纳总结. Redis默认有16个数据库(编号为0~15),默认使用 ...
- redis watch使用场景_[Redis] 常用类型及应用场景
主要类型字符串(strings,bitmaps) 散列(hashes) 列表(lists) 集合(sets) 有序集合(sorted sets) hyperloglogs 发布订阅(pub/sub) ...
- 十六、Redis三种特殊类型之三Bitmap
一.BitMap是什么 通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身,value对应0或1,我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省储存 ...
- Redis五大数据类型常用命令与使用场景总结
常用五种数据类型 字符串string 哈希hash 列表list 集合set 有序集合zset ----------字符串string---------- 常见命令 set key value mse ...
- 呕心整理Java中的12种常用设计模式以及应用场景
目录 单例模式 饿汉模式 懒汉模式 线程锁模式 双重判断模式 静态内部类模式 策略模式 工厂模式 简单工厂 抽象工厂 门面模式 装饰器模式 责任链模式 享元模式 观察者模式 代理模式 静态代理模式 动 ...
- 十五、Redis三种特殊类型之二HyperLoglog
一.概念 1.redis在2.8.9版本添加了HyperLogLog结构;HyperLogLog是一种算法,并非redis独有. 2.redis HyperLogLog是用来做基数统计的算法,Hype ...
- 十四、Redis三种特殊类型之一Geospatial
一.概述 redis除了提供了五大基本数据类型String.List.Set.Hash.Zset,还有3个比较特殊的数据类型,Geospatial.Hyperloglog.Bitmap,这三个数据类型 ...
- Redis三种特殊类型
文章目录 geospatial 地理空间 geoadd 添加地理位置 geopos geodist geohash georadius georadiusbymember geo底层 hyperlog ...
- PHP类有哪几种,PHP中有哪几种常用类型?
[单选题]以下对决策工作与计划工作的关系表述不正确的是( ). [判断题]显微镜使用后应该注意,物镜旋转到两镜之间,提升镜筒,把玻片取下.关闭光源,拔下电源,盖上静电罩,收好观察玻片.( ) [多选题 ...
最新文章
- yolov5做情感识别
- 「高并发秒杀」mysql只修改字段名称
- SpringSecurity分布式整合之认证服务配置文件编写和测试
- scanf与gets的区分
- opencv +数字识别
- P4945-最后的战役【dp,离散化】
- signal函数说明
- 转:采用geodatabase做乡界的一点总结
- 【flutter环境问题】Downloading Dart SDK Flutter engine时卡着不动
- 铁芯用matlab怎么仿真,Simulink的BLDC建模与仿真
- python列表常用方法_python 列表常用方法
- c语言结构体定义常量,C语言结构体
- 台风怎么看内存颗粒_【内存篇】能否Deja Vu?海力士DJR超频测试
- tomcat本地运行web项目图片显示不出来
- sql bigint 转varchar_SQL 优化案例一则
- 读科研经费陷“无底黑洞”有感
- 前端校招字节跳动面试 第三篇
- firnbsp;提交的版本的iphone4amp;nbs…
- 微博Android平台SDK文档
- js获取的当前时间的月份--getFullYear()、getMonth()、getDate(),本示例是获取当前月份的开始跟结束
热门文章
- 责任链模式(职责链模式)(Chain of Responsibility Pattern)
- 贷款银行一二三类账户区别是什么?
- 小程序1.7亿日活,微信张小龙亲临2018微信公开课PRO发表演讲
- Graph Decipher: A transparent dual-attention graph neural network 图解密器:一种透明的双注意图神经网络,用于理解节点分类的消息传递机制
- git切换分支 error: Your local changes to the following files would be overwritten by checkout: 报错解决方法
- stc15 — 点亮第一个LED灯
- 2018-2019最具成长性AI技术Top10:GAN、胶囊网络、云端AI排前三
- mes系统的价格由哪些因素决定?
- 正大国际期货:宝 今天去开户了 开的什么户?正大国际主账户呀
- python画米老鼠图片_简笔画:如何使用Flash绘制米老鼠,看完你学会了么