当前位置: 首页 > news >正文

点开文字进入网站是怎么做的律师做网络推广最好的网站有哪些

点开文字进入网站是怎么做的,律师做网络推广最好的网站有哪些,小说阅读网站怎么建设,代理注册公司行情6. Redis AOF 6.1 简介 目前,redis的持久化主要应用AOF(Append Only File)和RDF两大机制,AOF以日志的形式来记录每个写操作(增量保存),将redis执行过的所有指令全部安全记录下来(读…

6. Redis AOF

6.1 简介

目前,redis的持久化主要应用AOF(Append Only File)和RDF两大机制,AOF以日志的形式来记录每个写操作(增量保存),将redis执行过的所有指令全部安全记录下来(读操作不记录)。只许追加文件,但不可以改写文件,redis启动之初,会读取该文件,重新构建数据。

6.2 AOF的配置

  • AOF默认不开启,在conf配置文件中进行配置。
  • 修改redis.conf配置文件
    appendonly no
    //修改
    appendonly yes
    
  • 默认文件名是appendonly.aof
  • 默认是启动后的相对路径,redis在哪里启动,appendonly.aof文件就在哪生成

6.3 AOF日志是如何实现

数据库写前日志(Write Ahead Log ,WAL),在实际写数据库前,先把修改的数据记录到日志文件中,以便发生故障时,时行恢复。

AOF日志是写后日志。redis先去执行命令,把数据写入内存中,然后才去记录日志。
在这里插入图片描述
查看AOF文件
set k1 v1
vi appendonly.aof

*3 //接下来的指令由3部分组成
$3 //指令有3个字节
set
$2 //指令有2个字节
k1
$2 //指令有2个字节
v1

为什么使用写后日志?

  1. redis为了避免检查开销,向AOF中记录日志,是不做检查的。如果写前执行,很有可能将错误指令记录到日志中,在使用redis恢复日志时,就可能会出现错误
  2. 不会阻塞当前的写操作

6.4 AOF 的潜在风险

  1. aof文件可能由于异常原因被损坏。可以使用redis自带的命令redis-check-aof --fix appendonly.aof文
    件,修复成功,可以正确启动
  2. 由于刚刚执行一个指令,还没有写入日志,就宕机了。就会导致数据永久丢失(redis做为数据库存储的
    情况)
  3. AOF避免了对当前指令的阻塞,但可能会由于磁盘写入压力较大,对下一个操作带来阻塞风险

6.5 AOF三种写回策略

打开redis.conf配置文件 appendfsync选项

  • always:同步写回:每个写指令执行完,立即同步将指令写入磁盘日志文件中
  • everysec:每秒写回:默认配置方式。每个写指令执行完,先把日志写到AOF文件的内存缓冲区。每隔一秒把缓冲区的内容写入磁盘
  • no:操作系统控制写回:每个写指令执行完,先把日志写到AOF文件的内存缓冲区,由操作系统决定何时把缓冲区的内容写入磁盘
选项写日志时机优点缺点
always同步写回数据可靠性高,基本不丢失对性能影响大
everysec每秒写回性能适中当服务器宕机时,丢失1秒内数据
no操作系统控制写回性能最高当服务器宕机时,丢失数据较多

6.6 AOF重写机制

6.6.1 简介

Redis根据数据库现有数据,创建一个新的AOF文件,读取数据库中所有键值对,重新对应一条命令写入。

可以使用命令bgrewriteaof

重写主要是对多余的命令进行简化,修改,例如对list的lpushrpop进行简化

6.6.2 AOF重写的相关配置

auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

如果aof文件超过64m,且比上次重写后的大小增加了100%,自动触发重写。
例如 文件80m,开如重写,重写后降到50m,下一次,达到100m再开始重写。

6.6.3 AOF重写流程

  • bgrewirteaof触发重写,判断是否当前有重写在运行,如果有,则等待重写结束后再执行
  • 主进程fork出一个子进程,执行重写操作,保证主进程不阻塞,可以继续执行命令
  • 子进程循环遍历reids内存中的所有数据到临时文件,客户端的写请求同时写入aof缓冲区和aof重写缓冲区。保证原AOF文件完整以及新的AOF文件生成期间的新的数据修改操作不会丢失
  • 子进程写完新AOF文件以后,向主进程发送信号,主进程更新统计信息
  • 主进程把aof重写缓冲区中的数据写入到新的AOF文件
  • 用新AOF文件覆盖掉旧的AOF文件,完成AOF重写

7. Redis RDB

7.1 简介

RDB(Redis DataBase):内存快照,记录内存中某一时刻数据的状态。

RDB和AOF相比记录的数据,不是操作指令

redis提供了两个指令生成RDB文件

  • save:再主线程中执行,会阻塞主线程
  • bgsave:创建一个子线程,专门用来写RDB,避免主线程阻塞,默认配置

例如:有6GB的内存数据量,磁盘写入0.3GB/S,需要20S时间,来完成RDB文件写入,其中在这20中可能会有写入或修改数据

  • 处理技术:写时复刻技术(copy-on-write cow)。在执行快照处理的时候,依然正确执行写入操作(快照将修改数据创建副本,保存的时修改之前的数据
    在这里插入图片描述

7.2 快照频率

通过redis.conf配置文件去做处理

# save 3600 1
# save 300 100
# save 60 10000

7.3 混合使用AOF和RDB

通过redis.conf配置文件
打开aof

appendonly yes

打开混合配置

aof-use-rdb-preamble yes

在aof文件中,前半部分,就是rdb文件的内容,从rewirte之后,是aof文件内容
在这里插入图片描述

7.4关于对redis执久化处理的建议

  • 如果数据在服务器运行的时候,使用redis做缓冲,可以不使用任何持久化方式
  • 数据不能丢失,rdb和aof混合使用是一个好的选择
  • 如果数据不要求非常严格,要以允许分钟级别丢失,可以使用rdb
  • 如果只使用AOF,建议配置策略是everysec,在可靠性和性能之间做了一个折中
  • 如果磁盘允许,尽量避免AOF重写的频率,将默认值64M进行修改
http://www.yayakq.cn/news/377084/

相关文章:

  • 一个成功的网站必须具备哪几个要素wordpress浮动插件
  • 网页设计与网站建设文档西安网站制作计划
  • 彩票网站怎么做收银青海城乡与建设厅网站
  • 长沙电子商务网站建设一级a做爰片i免费网站
  • 深圳网站公司制作wordpress自助建站系统
  • 网站广告模板代码绿色风格的网站
  • 建设银行舟山分行网站网站被k的表现
  • 电子商务网站 方案长春做网站优化
  • 东莞商务网站建设低代码app开发平台
  • icoc.cc是哪个网站域名公司想做网络推广贵不
  • 万联芯城网站建设nginx即代理又做网站
  • 欢迎访问中国建设银行网站个人客户自己如何做一个网络平台
  • 做网站的公司大学生创意产品设计方案
  • ftp服务器设置网站主页个人站长做网站
  • 外贸企业网站推广方案登录网站显示系统维护怎么做
  • 手机网站设计公做网站相关人员
  • 门户网站制作流程西安网站开发的未来发展
  • 设计素材网站那个好网站如何进行备案
  • 上海工程建设执业资格注册中心网站网站开发要用到的工具
  • 做设计什么兼职网站怎么做离线网站
  • 如何删除网站后台的文章彩票做网站
  • 怒江企业网站建设服装店设计
  • 网站下载视频的方法天天网站建设
  • 凡科网官方网站城固县网站建设
  • 长沙专业的网站设计网页素材免费下载
  • 苏州集团网站制作设计深圳做网站推广公司哪家好
  • php 可以自己做网站吗小程序云开发教程
  • 推广网站平台有哪些保定做网站设计
  • 做封面的软件ps下载网站环保主题静态网站模板
  • 建设银行+贷款+查询+网站给我一个网站吧