一小时学习redis!

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

启动一个哨兵节点

实际生产环境,会使用三个哨兵节点来保证高可用

学没学会还不太好说,但是算是有一个初步的认识辣~~~~~~

相关推荐
开心工作室_kaic1 分钟前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
懒洋洋大魔王3 分钟前
RocketMQ的使⽤
java·rocketmq·java-rocketmq
武子康8 分钟前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神40 分钟前
易考八股文之Java中的设计模式?
java·开发语言·设计模式
朝九晚五ฺ1 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
qq_327342731 小时前
Java实现离线身份证号码OCR识别
java·开发语言
Oak Zhang1 小时前
sharding-jdbc自定义分片算法,表对应关系存储在mysql中,缓存到redis或者本地
redis·mysql·缓存
门牙咬脆骨2 小时前
【Redis】redis缓存击穿,缓存雪崩,缓存穿透
数据库·redis·缓存
门牙咬脆骨2 小时前
【Redis】GEO数据结构
数据库·redis·缓存
阿龟在奔跑2 小时前
引用类型的局部变量线程安全问题分析——以多线程对方法局部变量List类型对象实例的add、remove操作为例
java·jvm·安全·list