redis学习笔记
学习redis需要知道 redis是干什么的 能做什么 使用场景是什么 至于安装 使用 常见面试题 此处就不在涉及
1. redis是什么
我的理解:C语言编写的 KV键值对数据库 缓存 消息队列;支持几种数据结构;备份机制;支持集群
开放源代码的内存数据结构存储,用作数据库、缓存和消息代理。它支持字符串、哈希、列表、集合,带范围查询的排序集合,位图,超日志,带有半径查询的地理索引和流。内置了副本备份,Lua脚本,LRU算法,事务、不同等级的磁盘备份,高质量的Redis哨兵机制和集群
2. 支持的客户端
官网有详细介绍 Java C# Node.js 很多说得上来的都可以 毕竟它是一个客户端 只是使用这些语言去连接而已
3. 可以使用的数据结构
- strings
- Lists
- Sets
- Sorted sets
- Hashes
- Bit arrays
- HyperLogLogs
- Streams
4. 基于数据结构 使用场景包括
- 计数器 限速器
incr
命令 - 队列
LPUSH key value
- 共同关注的人 获得两个集合的交集
SINTER key [key...]
- 附近的人 利用geo的相关命令
GEORADIUS key longitude latitude radius m|km|ft|mi ...
- 发布订阅 pub/sub下面有很多关于发布订阅的命令
publish
pubsub
5. 常见的命令
一般incr
decr
lpush
lpop
rpush
rpop
sadd
sinter
INCR key
对存储在指定的key的数值执行原子的加1操作
6. redis支持持久化
rdb和aof
总结:观其大略 心中不慌
需要具体使用的时候 再去研究细节