redis
基于内存的数据存储系统
三种使用方式
redis优势
安装redis
最后一种方式只能得到5.0的redis版本 比较老!
启动redis redis-server.exe 命令 停止ctrl+c或关闭
启动客户端 redis-cli
redisinsight安装
字符串
redis区分大小写 默认使用字符串存储 二进制存储安全的
列表
LPUSH最后添加的元素排在最前面
RPUSH从列表的尾部添加元素
RPOP删除列表的最后一个元素
LPOP删除列表的第一个元素
都可以一次性删除多个元素
一个简单的消息队列(先进先出队列)
LPUSH从列表头添加一个元素 LPOP在列表尾部删除一个元素
删除LTRIM 删除除start到stop之外的所有元素
集合
列表中元素可以重复,集合中元素不能重复
集合的运算 redis也支持
有序集合 SortedSet
还有很多操作,比如删除成员等等等等
哈希 Hash
哈希表键值对的集合,适合存储对象
发布订阅模式
这种方式 消息无法持久化 无法记录历史消息~
消息队列Stream
*自动生成ID,也可以手工指定ID
ID的格式 整数加上短横线再加上一个整数 第一个整数表示时间戳第二个表示序列号 要保证ID的递增!
0改成$获取最新的两条消息
也可以创建一个消费者组
地理空间 GeoSpatial
存储地理位置的数据结构,并支持对地理位置进行各种操作
HyperLogLog
一个用作基数统计的算法
适合做一些对精确度要求不高,而且数据量非常大的统计工作
比如统计某个网站的UV,统计某个词的搜索次数等等。
位图Bitmap
位域 Bitfield
redis事务
和关系型数据库事务是一个原子操作不同的是,redis事务不能保证所有操作都能执行成功,某一个命令执行失败,他后面的命令依然能够被执行
持久化
redis基于内存的数据库
RDB是指在指定时间间隔内将内存中的数据快照写入磁盘,某一个时间点上数据的完整副本。
1.配置文件来自动触发快照
2.使用save命令手动触发快照
RDB更适合来做备份
bgsave单独创建子进程负责将内存中的数据写入到硬盘中
AOF追加文件
开启AOF
主从复制
主从复制是指将一台redis服务器的数据复制到其他redis服务器
通过配置文件修改 redis.conf
主从复制!
哨兵模式 Sentinel
实现自动故障转移?哨兵模式 以一个独立的进程运行在redis集群中,用来监控redis的各个节点是否运行正常
1.监控 2.通知 3.自动故障转移
redisi-sentinel sentinel.conf
启动一个哨兵节点
实际生产环境,会使用三个哨兵节点来保证高可用
学没学会还不太好说,但是算是有一个初步的认识辣~~~~~~