最全redis高级(二)

1启动redis的3种方式

  • 第2 3 种都可以·1通过改端口号来启动多个redis服务端

1.1自动启动

  • redis-server
  • redis-cli

1.2指定端口启动

在这里插入图片描述
在这里插入图片描述

1.3指定配置文件启动

  • 配置文件
    在这里插入图片描述
    在这里插入图片描述
  • 服务端启动
    在这里插入图片描述
  • 客户端连接
    在这里插入图片描述
  • 日志部分
    在这里插入图片描述

2持久化

2.1持久化简介

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2RDB

2.2.1save指令启动

在这里插入图片描述

  • 客户端连接执行一下save命令 配置文件和上方一样
    在这里插入图片描述- 根据配置文件的设定 在服务文件保存的目录中生成rdb文件 这个文件中存放save命令所得到的快照 这个快照就是持久化的基本
    在这里插入图片描述

2.3.1.1save相关的配置

在这里插入图片描述

2.2.1.2save指令原理

在这里插入图片描述

2.2.1.3save指令的缺陷

在这里插入图片描述

2.2.2bgsave指令启动

在这里插入图片描述

2.2.2.1bgsave工作原理

在这里插入图片描述

2.2.2.2bgsave指令相关的配置

在这里插入图片描述

2.2.3配置文件启动

在这里插入图片描述

2.2.3.1相关配置

在这里插入图片描述

2.2.3.2配置文件工作原理

在这里插入图片描述

2.2.4三种启动方式的对比

在这里插入图片描述

2.2.5RDB特殊启动方式

在这里插入图片描述

2.2.6RDB优点和缺点

在这里插入图片描述

2.3AOF

在这里插入图片描述

2.3.1基本操作

2.3.1.1写数据过程

在这里插入图片描述

2.3.1.2写数据策略

在这里插入图片描述

2.3.1.3AOF功能开启

在这里插入图片描述

2.3.1.4AOF相关的配置

在这里插入图片描述

2.3.2重写

2.3.2.1为什么需要重写

在这里插入图片描述

2.3.2.2重写概念和作用

在这里插入图片描述

2.3.2.3重写规则

在这里插入图片描述

2.3.2.4重写方式

  • 自动重写是在配置文件中写入一下信息
  • 而手动重写是在客户端输入bgrewriteaof命令
    在这里插入图片描述

2.3.3手动重写原理

在这里插入图片描述

2.3.4自动重写方式

在这里插入图片描述

2.3.5重写流程

在这里插入图片描述
在这里插入图片描述

2.4 RDB和AOF区别

在这里插入图片描述

2.5RDB和AOF如何选择

在这里插入图片描述

2.6 持久化应用场景

在这里插入图片描述

3事务

3.1什么是事务

在这里插入图片描述

3.2事务的基本操作

在这里插入图片描述
在这里插入图片描述

3.2.1取消事务

在这里插入图片描述

3.2.2事务的基本流程

在这里插入图片描述

3.2.3事务的注意事项

在这里插入图片描述
在这里插入图片描述

3.3锁

在这里插入图片描述
在这里插入图片描述

3.4分布式锁

3.4.1什么是分布式锁

在这里插入图片描述
在这里插入图片描述

3.4.2死锁的发生和解决

在这里插入图片描述
在这里插入图片描述

4删除策略

4.1过期数据

在这里插入图片描述

  • 数据删除与否取决于配置文件的删除策略

4.1.1时效数据的存储结构

  • 在每个库中都有一个expires空间 ,这个空间存放这有时效性数据的key对应value的地址以及key的有效时间
    在这里插入图片描述

4.2数据删除策略

在这里插入图片描述

4.2.1定时删除

在这里插入图片描述

4.2.2惰性删除

  • 每次当客户端get任何数据都会调用expirelfNeeded()这个函数。这个函数可以判断数据是否过期。如果过期删除expires以及value的空间
    在这里插入图片描述

4.2.3定期删除

  • 通过info指令可以在客户端看到server.hz的值。server.hz的值表示秒执行serverCron()函数多少次。serverCron函数可以调用databaseCron对整个数据库16个分库的expires进行更新,而databaseCron函数调用activeExpireCycle函数对一个分库一个分库进行更新。
    在这里插入图片描述
    在这里插入图片描述

4.3.4三个策略的对比

  • redis数据库使用的是惰性删除和定期删除。在这里插入图片描述

4.3逐出算法

4.3.1为什么需要数据的逐出

在这里插入图片描述

4.3.2数据逐出的相关配置

在这里插入图片描述

4.3.3数据逐出的八种策略

在这里插入图片描述
在这里插入图片描述

4.3.4数据逐出的配置的依据

在这里插入图片描述

5redis配置文件

5.1服务端设定

在这里插入图片描述

5.2日志配置

在这里插入图片描述

5.3客户端配置

在这里插入图片描述

5.4为多个服务器配置文件配置相同部分

在这里插入图片描述

6高级数据类型

6.1Bitmaps

  • Bitmaps 是一个以bit为操作单位的数据类型 ,所以你取值时一定要知道value在key的偏移量
    在这里插入图片描述

6.1.1基础操作

在这里插入图片描述

6.1.2扩展操作

在这里插入图片描述

6.1.3应用场景

在这里插入图片描述

6.2 HyperLogLog

  • 用于做基数统计

6.2.1什么是基数

在这里插入图片描述

6.2.2LogLog算法

在这里插入图片描述

6.2.3基本操作

在这里插入图片描述

6.2.4注意事项

在这里插入图片描述

6.3CEO

  • 存储多个座标的数据结构

6.3.1基本操作

在这里插入图片描述
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章