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

做公司的宣传网站需要注意什么浙江省建设业技术创新协会网站

做公司的宣传网站需要注意什么,浙江省建设业技术创新协会网站,网站开发系统调研目的,素材网有哪些什么是AOF日志 AOF日志是redis为数据的持久化提供了的一个技术,日志里面记录着执行redis写命令。每当redis执行一条写命令的时候#xff0c;就会将该命令记录 到AOF日志当中。当redis启动的时候#xff0c;可以加载AOF日志中的所有指令#xff0c;并执行这些指令恢复所有的… 什么是AOF日志 AOF日志是redis为数据的持久化提供了的一个技术,日志里面记录着执行redis写命令。每当redis执行一条写命令的时候就会将该命令记录 到AOF日志当中。当redis启动的时候可以加载AOF日志中的所有指令并执行这些指令恢复所有的数据。 在 Redis 中 AOF 持久化功能默认是不开启的需要我们修改 redis.conf 配置文件中的以下参数 Redis 是先执行写操作命令后才将该命令记录到 AOF 日志里的  优点先执行写操作命令再记录日志的话只有在该命令执行成功后才将命令记录到 AOF 日志里这样就不用额外的检查开销不会出现语法错误等问题保证记录在 AOF 日志里的命令都是可执行并且正确的 缺点执行写操作命令和记录日志是两个过程那当 Redis 在还没来得及将命令写入到硬盘时服务器发生宕机了这个数据就会有丢失的风险 写入AOF日志的过程 Redis 执行完写操作命令后会将命令追加到 server.aof_buf 缓冲区然后通过 write() 系统调用将 aof_buf 缓冲区的数据写入到 AOF 文件此时数据并没有写入到硬盘而是拷贝到了内核缓冲区 page cache等待内核将数据写入硬盘 redis.conf 配置文件中的 appendfsync 配置项可以有以下 3 种参数可填 Always这个单词的意思是「总是」所以它的意思是每次写操作命令执行完后同步将 AOF 日志数据写回硬盘Everysec这个单词的意思是「每秒」所以它的意思是每次写操作命令执行完后先将命令写入到 AOF 文件的内核缓冲区然后每隔一秒将缓冲区里的内容写回到硬盘No意味着不由 Redis 控制写回硬盘的时机转交给操作系统控制写回的时机也就是每次写操作命令执行完后先将命令写入到 AOF 文件的内核缓冲区再由操作系统决定何时将缓冲区内容写回硬盘。 Always 策略的性能比较差可靠性高尽可能保证数据不会丢失 Everysec策略性能适中宕机会丢失一秒的数据 No策略性能良好宕机会丢失较多的数据 AOF重写机制 AOF 日志是一个文件随着执行的写操作命令越来越多文件的大小会越来越大。 其中AOF日志中 Redis 为了避免 AOF 文件越写越大提供了 AOF 重写机制当 AOF 文件的大小 超过所设定的阈值后Redis 就会启用 AOF 重写机制来压缩 AOF 文 件。 AOF重写机制 读取当前数据库中的所有键值对然后将每一个键值对用一条命令记录到「新的 AOF 文件」 作用 尽管某个键值对被多条写命令反复修改最终也只需要根据这个「键值对」当前的最新状态然后用一条命令去记录键值对代替之前记录这个键值对的多条命令这样就减少了 AOF 文件中的命令数量。最后在重写工作完成后。最后在重写工作完成后将新的 AOF 文件覆盖现有的 AOF 文件。 为什么重写 AOF 的时候不直接复用现有的 AOF 文件而是先写到新的 AOF 文件再覆盖过去 如果 AOF 重写过程中失败了现有的 AOF 文件就会造成污染可能无法用于恢复使用。 AOF后台重写 当 触发 AOF 重写时比如当 AOF 文件大于 64M 时就会对 AOF 文件进行重写这时是需要读取所有缓存的键值对数据并为每个键值对生成一条命令然后将其写入到新的 AOF 文件重写完后就把现在的 AOF 文件替换掉。这个过程其实是很耗时的所以重写的操作不能放在主进程 所以Redis 的 重写 AOF 过程是由后台子进程 bgrewriteaof 来完成的这样做有两个作用 子进程进行 AOF 重写期间主进程可以继续处理命令请求从而避免阻塞主进程父进程 使用fork 创建子进程时父子进程是共享内存数据的不过这个共享的内存只能以只读的方式而当父子进程任意一方修改了该共享内存就会发生「写时复制」所以子进程在执行后台重写是不影响父进程。 子进程是怎么拥有主进程一样的数据副本的呢 当父进程 使用fork 创建子进程的时候会将父进程中的页表 复制给子进程因此父子进程它们的共享一块物理内存。 写时复制顾名思义在发生写操作的时候操作系统才会去复制物理内存这样是为了防止 fork 创建子进程时由于物理内存数据的复制时间过长而导致父进程长时间阻塞的问题。 重写子进程只会对这个内存进行只读重写 AOF 子进程会读取数据库里的所有数据并逐一把内存数据的键值对转换成一条命令再将命令记录到重写日志新的 AOF 文件 重写 AOF 日志过程中如果主进程修改了已经存在 key-value此时这个 key-value 数据在子进程的内存数据就跟主进程的内存数据不一致了这时要怎么办呢 Redis 设置了一个 AOF 重写缓冲区这个缓冲区在创建 bgrewriteaof 子进程之后开始使用 在重写 AOF 期间当 Redis 执行完一个写命令之后它会同时将这个写命令写入到 「AOF 缓冲区」和 「AOF 重写缓冲区」。 当子进程完成 AOF 重写工作扫描数据库中所有数据逐一把内存数据的键值对转换成一条命令再将命令记录到重写日志后会向主进程发送一条信号。 主进程收到该信号后会调用一个信号处理函数该函数主要做以下工作 将 AOF 重写缓冲区中的所有内容追加到新的 AOF 的文件中使得新旧两个 AOF 文件所保存的数据库状态一致新的 AOF 的文件进行改名覆盖现有的 AOF 文件。
http://www.zqtcl.cn/news/823445/

相关文章:

  • 网站开发项目规划书四川建设网个人证书查询网址
  • 怎么模板建站微信做单30元一单
  • 兰州建设局网站十堰专业网站建设
  • html5 网站源码网络营销课程思政
  • 建设网站贵吗深圳网站建设推广论坛
  • 做网站需注意事项会员卡管理系统下载
  • 嘉兴高端网站建设公司电子信息工程能进国家电网吗
  • 建网站 广州网站改版 理论
  • 门户网站简称昆明本地网站
  • 网站定位的核心意义离婚协议书模板 完整版
  • 网站首页改版方案长图制作网站
  • 网站的栏目有什么名字保定网络公司网站
  • 南京建设机械网站建设银行网站解除绑定
  • 厚街公司网站建设wordpress发邮件更新
  • wap网站制作网络设计公司经营范围
  • 织梦网站被做跳转还被删除文件第三方电子商务平台有哪些
  • 财经网站源码 织梦游戏ui培训
  • 石家庄站布局图网站建设公司怎么
  • 电商网站建设选迅法网东莞系统网站建设
  • 网站栏目 英文wordpress 情侣
  • 济南市历下区建设局官方网站wordpress 作者页
  • 武进建设银行网站首页大型网站建设哪家快
  • 做网站用vs怎么自己写代码做网站
  • 网站建设产品需求文档技术培训学校机构
  • 简单个人网站源码石景山网站seo优化排名
  • 用花生做网站房地产电子商务的网站建设
  • 宁波网站建设团队sem竞价托管多少钱
  • 工艺品东莞网站建设营销助手app
  • 怎么添加网站 多少钱wordpress 在线教育模板
  • 做鞋的垂直网站小型购物网站模板