空白键|redis学习第一篇
redis简介redis是一个开源的 , 使用ANSIC语言编写、支持网络、可基于与内存也可持久化的Key-Value数据库 , 并提供多种语言的API 。
应用场景缓存
【空白键|redis学习第一篇】redis访问速度快 , 支持5种常用类型 , 对于一些热点数据的缓存 , 可以把一些数据缓存到redis中 , 这样是直接从内存中获取数据 , 速度会增快很多 , 同时也避免每次接口请求都要去查询数据库 , 避免数据库的消耗过大 。
队列
除了redis自身的发布/订阅模式 , 我们也可以利用List来实现一个队列机制 , 提供了lpush和rpop , 这两个方法具有原子性 , 可以插入队列元素和弹出队列元素 。
分布式锁
我们将用户的行为理解为一个时间序列 , 可以在这个时间序列内利用数据库锁来控制资源的并发访问是不太理想的 , 大大影响了数据库的性能 。 可以利用Redis的setnx功能来编写分布式的锁 , 如果设置返回1说明获取锁成功 , 否则获取锁失败 。
为什么使用redis因为redis基于内存 , 类似HashMap , 所以速度很快 。 redis提供丰富的数据类型 , 可以与各种语言很好的进行集成 , redis常用的数据类型有String、List、Set、SortSet、Hash , 每种类型提供都提供非常丰富的操作命令 。 消息队列Session共享布隆过滤器
推荐阅读
- Java|计算机专业的本科生,该选择学习Java技术体系还是.NET技术体系
- 素手烹茶|Redis 事务也叫事务吗?,不支持原子性的
- 轻拔琴弦|非常强大,硬核!微软云K8S学习指南免费领取了
- 华为|多少企业的失败,是从“学习”华为开始的
- 搞机特工|学习办公、娱乐三不误,适合所有人的2019款iPad
- 华为|非计算机专业出身想学习编程语言,选择哪门编程语言性价比较高
- 产业气象站|AI为你拨开“阴霾”:机器学习在抑郁症治疗中的应用
- 空白键|日常更新全面屏壁纸
- mac小当家|for mac(日语五十音学习软件),50音起源
- mybatis|java新手教程: springboot集成mybatis-plus上篇的学习