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

成都房地产网站建设网站建设技术可行性

成都房地产网站建设,网站建设技术可行性,深圳网站设计排名,建设网站需要的技术前言 如果有人问你#xff1a;你会把 Redis 用在什么业务场景下#xff1f; 我想你大概率会说#xff1a;我会把它当作缓存使用#xff0c;因为它把后端数据库中的数据存储在内存中#xff0c;然后直接从内存中读取数据#xff0c;响应速度会非常快。…前言 如果有人问你你会把 Redis 用在什么业务场景下 我想你大概率会说我会把它当作缓存使用因为它把后端数据库中的数据存储在内存中然后直接从内存中读取数据响应速度会非常快。 没错这确实是 Redis 的一个普遍使用场景但是这里也有一个绝对不能忽略的问题「一旦服务器宕机内存中的数据将全部丢失」 。 目前Redis 的持久化主要有两大机制即 「AOFAppend Only File日志和 RDBRedis DataBase 快照」 。 AOF 日志是如何实现的 说到日志我们比较熟悉的是数据库的写前日志Write Ahead Log, WAL在实际写数据前先把修改的数据记到日志文件中以便故障时进行恢复。不过AOF 日志正好相反它是写后日志写后的意思是 Redis 是先执行命令把数据写入内存然后才记录日志。 AOF日志是如何实现的 AOF 里记录的是 Redis 收到的每一条命令这些命令是以文本形式保存的。 我们以 Redis 收到“set testkey testvalue”命令后记录的日志为例看看 AOF 日志的内容。其中“*3”表示当前命令有三个部分每部分都是由“数字开头后面紧跟着具体的命令、键或值。这里数字表示这部分中的命令、键或值一共有多少字节。例如3 set”表示这部分有 3 个字节也就是“set”命令。 AOF日志是如何实现的 写后日志的优势与风险 「为了避免额外的检查开销Redis 在向 AOF 里面记录日志的时候并不会先去对这些命令进行语法检查」 。 如果先记日志再执行命令的话日志中就有可能记录了错误的命令Redis 在使用日志恢复数据时就可能会出错。而写后日志这种方式就是先让系统执行命令只有命令能执行成功才会被记录到日志中否则系统就会直接向客户端报错。 所以Redis 使用写后日志这一方式的一大好处是可以避免出现记录错误命令的情况。 除此之外写后日志一个好处它是在命令执行后才记录日志「不会阻塞当前的写操作」 。 AOF 也有两个潜在的风险 风险一如果刚执行完一个命令还没有来得及记日志就宕机了那么这个命令和相应的数据就有丢失的风险。 如果此时 Redis 是用作缓存还可以从后端数据库重新读入数据进行恢复。 如果 Redis 是直接用作数据库的话此时因为命令没有记入日志所以就无法用日志进行恢复了。 风险二AOF 虽然避免了对当前命令的阻塞但可能会给下一个操作带来阻塞风险。 AOF 日志也是在主线程中执行(写回策略为 always 时)如果在把日志文件写入磁盘时磁盘写压力大就会导致写盘很慢进而导致后续的操作也无法执行了。 这两个风险都是和 AOF 写回磁盘的时机相关的。这也就意味着如果我们能够控制一个写命令执行完后 AOF 日志写回磁盘的时机这两个风险就解除了。 日志的写回策略 AOF 机制一共有三种写回策略也就是 AOF 配置项 appendfsync 的三个可选值。 「Always 同步写回」 每个写命令执行完立马同步地将日志写回磁盘 「Everysec 每秒写回」 每个写命令执行完只是先把日志写到 AOF 文件的内存缓冲区每隔一秒把缓冲区中的内容写入磁盘 「No 操作系统控制的写回」 每个写命令执行完只是先把日志写到 AOF 文件的内存缓冲区由操作系统决定何时将缓冲区内容写回磁盘。 针对避免主线程阻塞和减少数据丢失问题这三种写回策略都无法做到两全其美。 日志的写回策略 我们就可以根据系统对高性能和高可靠性的要求来选择使用哪种写回策略了。 想要获得高性能就选择 No 策略 想要得到高可靠性保证就选择 Always 策略 允许数据有一点丢失又希望性能别受太大影响的话那么就选择 Everysec 策略。 日志的重写 重写的作用 AOF 是以文件的形式在记录接收到的所有写命令。「随着接收的写命令越来越多AOF 文件会越来越大」 。这也就意味着我们一定要小心 AOF 文件过大带来的性能问题主要在于以下三个方面 一是文件系统本身对文件大小有限制无法保存过大的文件 二是如果文件太大之后再往里面追加命令记录的话效率也会变低 三是如果发生宕机AOF 中记录的命令要一个个被重新执行用于故障恢复如果日志文件太大整个恢复过程就会非常缓慢这就会影响到 Redis 的正常使用。 AOF 重写机制就是在重写时Redis 根据数据库的现状创建一个新的 AOF 文件也就是说「读取数据库中的所有键值对然后对每一个键值对用一条命令记录它的写入」 。重写机制具有“多变一”功能。所谓的“多变一”也就是说旧日志文件中的多条命令在重写后的新日志中变成了一条命令。 重写的作用 重写的过程 AOF 日志由主线程写回不同重写过程是由「后台子进程 bgrewriteaof 来完成的这也是为了避免阻塞主线程」 导致数据库性能下降。 我把重写的过程总结为“「一个拷贝两处日志」 ”。 “一个拷贝”就是指每次执行重写时主线程 fork 出后台的 bgrewriteaof 子进程。此时fork 会把主线程的内存拷贝一份给 bgrewriteaof 子进程这里面就包含了数据库的最新数据。然后bgrewriteaof 子进程就可以在不影响主线程的情况下逐一把拷贝的数据写成操作记入重写日志。 第一处日志指的是因为主线程未阻塞仍然可以处理新来的操作Redis 会把这个操作写到它的缓冲区。这样一来即使宕机了这个 AOF 日志的操作仍然是齐全的可以用于恢复。 第二处日志就是指新的 AOF 重写日志。这个操作也会被写到重写日志的缓冲区。这样重写日志也不会丢失最新的操作。等到拷贝数据的所有操作记录重写完成后重写日志记录的这些最新操作也会写入新的 AOF 文件以保证数据库最新状态的记录。 此时我们就可以用新的 AOF 文件替代旧文件了。 重写的过程 总结来说每次 AOF 重写时Redis 会先执行一个内存拷贝用于重写然后使用两个日志保证在重写过程中新写入的数据不会丢失。而且「因为 Redis 采用子进程进行日志重写所以这个过程并不会阻塞主线程」 。 正因为记录的是操作命令而不是实际的数据所以用 AOF 方法进行故障恢复的时候需要逐一把操作日志都执行一遍。如果操作日志非常多Redis 就会恢复得很缓慢影响到正常使用。这当然不是理想的结果。那么还有没有既可以保证可靠性还能在宕机时实现快速恢复的其他方法呢 RDB 对 Redis 来说它实现类似照片记录效果的方式把某一时刻的状态以文件的形式写到磁盘上也就是快照RDB 文件。这样一来即使宕机快照文件也不会丢失数据的可靠性也就得到了保证。 和 AOF 相比RDB 记录的是某一时刻的数据并不是操作所以在做数据恢复时我们可以直接把 RDB 文件读入内存很快地完成恢复。 快照的原理 Redis 提供了两个命令来生成 RDB 文件分别是 save 和 bgsave。 「save」 在主线程中执行会导致阻塞 「bgsave」 创建一个子进程专门用于写入 RDB 文件避免了主线程的阻塞这也是 Redis RDB 文件生成的默认配置。 我们可以通过 bgsave 命令来执行全量快照这既提供了数据的可靠性保证也避免了对 Redis 的性能影响。 在执行快照的同时Redis 就会借助操作系统提供的写时复制技术Copy-On-Write, COW正常处理写操作。bgsave 子进程是由主线程 fork 生成的可以共享主线程的所有内存数据。bgsave 子进程运行后开始读取主线程的内存数据并把它们写入 RDB 文件。 如果主线程对这些数据也都是读操作例如图中的键值对 A那么主线程和 bgsave 子进程相互不影响。但是如果主线程要修改一块数据例如图中的键值对 C那么这块数据就会被复制一份生成该数据的副本键值对 C’。然后主线程在这个数据副本上进行修改。同时bgsave 子进程可以继续把原来的数据键值对 C写入 RDB 文件。 快照的原理 这样既保证了快照的完整性也允许主线程同时对数据进行修改避免了对正常业务的影响。 混合 AOF/RDB 虽然 bgsave 执行时不阻塞主线程但是如果频繁地执行全量快照也会带来两方面的开销。 一方面频繁将全量数据写入磁盘会给磁盘带来很大压力多个快照竞争有限的磁盘带宽前一个快照还没有做完后一个又开始做了容易造成恶性循环所以在 Redis 中如果有一个 bgsave 在运行就不会再启动第二个 bgsave 子进程。 另一方面bgsave 子进程需要通过 fork 操作从主线程创建出来。虽然子进程在创建后不会再阻塞主线程但是「fork 这个创建过程本身会阻塞主线程」 而且主线程的内存越大阻塞时间越长。 Redis 4.0 中提出了一个混合使用 AOF 日志和内存快照的方法。简单来说「内存快照以一定的频率执行在两次快照之间使用 AOF 日志记录这期间的所有命令操作」 。这样一来快照不用很频繁地执行这就避免了频繁 fork 对主线程的影响。而且AOF 日志也只用记录两次快照间的操作也就是说不需要记录所有操作了因此就不会出现文件过大的情况了也可以避免重写开销。 混合 AOF/RDB 总结 最后关于 AOF 和 RDB 的选择问题我想再给你提三点建议 数据不能丢失时内存快照和 AOF 的混合使用是一个很好的选择 如果允许分钟级别的数据丢失可以只使用 RDB 如果只用 AOF优先使用 everysec 的配置选项因为它在可靠性和性能之间取了一个平衡。
文章转载自:
http://www.morning.rybr.cn.gov.cn.rybr.cn
http://www.morning.fnhxp.cn.gov.cn.fnhxp.cn
http://www.morning.bmsqq.cn.gov.cn.bmsqq.cn
http://www.morning.rgrdd.cn.gov.cn.rgrdd.cn
http://www.morning.thrcj.cn.gov.cn.thrcj.cn
http://www.morning.ckbmz.cn.gov.cn.ckbmz.cn
http://www.morning.fxygn.cn.gov.cn.fxygn.cn
http://www.morning.kpmxn.cn.gov.cn.kpmxn.cn
http://www.morning.nssjy.cn.gov.cn.nssjy.cn
http://www.morning.mbzlg.cn.gov.cn.mbzlg.cn
http://www.morning.xbzfz.cn.gov.cn.xbzfz.cn
http://www.morning.tmnyj.cn.gov.cn.tmnyj.cn
http://www.morning.ntcmrn.cn.gov.cn.ntcmrn.cn
http://www.morning.kndyz.cn.gov.cn.kndyz.cn
http://www.morning.czwed.com.gov.cn.czwed.com
http://www.morning.llmhq.cn.gov.cn.llmhq.cn
http://www.morning.tkgjl.cn.gov.cn.tkgjl.cn
http://www.morning.cwgt.cn.gov.cn.cwgt.cn
http://www.morning.kjrlp.cn.gov.cn.kjrlp.cn
http://www.morning.dbtdy.cn.gov.cn.dbtdy.cn
http://www.morning.gcdzp.cn.gov.cn.gcdzp.cn
http://www.morning.clhyj.cn.gov.cn.clhyj.cn
http://www.morning.fstdf.cn.gov.cn.fstdf.cn
http://www.morning.jtmql.cn.gov.cn.jtmql.cn
http://www.morning.ydwsg.cn.gov.cn.ydwsg.cn
http://www.morning.mftdq.cn.gov.cn.mftdq.cn
http://www.morning.addai.cn.gov.cn.addai.cn
http://www.morning.fhxrb.cn.gov.cn.fhxrb.cn
http://www.morning.bmsqq.cn.gov.cn.bmsqq.cn
http://www.morning.tfsyk.cn.gov.cn.tfsyk.cn
http://www.morning.skmzm.cn.gov.cn.skmzm.cn
http://www.morning.qpsdq.cn.gov.cn.qpsdq.cn
http://www.morning.cwgfq.cn.gov.cn.cwgfq.cn
http://www.morning.pxlpt.cn.gov.cn.pxlpt.cn
http://www.morning.yesidu.com.gov.cn.yesidu.com
http://www.morning.fplqh.cn.gov.cn.fplqh.cn
http://www.morning.xckdn.cn.gov.cn.xckdn.cn
http://www.morning.khlxd.cn.gov.cn.khlxd.cn
http://www.morning.lthtp.cn.gov.cn.lthtp.cn
http://www.morning.ctswj.cn.gov.cn.ctswj.cn
http://www.morning.sqhlx.cn.gov.cn.sqhlx.cn
http://www.morning.svtxeu.com.gov.cn.svtxeu.com
http://www.morning.ylyzk.cn.gov.cn.ylyzk.cn
http://www.morning.tgyzk.cn.gov.cn.tgyzk.cn
http://www.morning.nmbbt.cn.gov.cn.nmbbt.cn
http://www.morning.knczz.cn.gov.cn.knczz.cn
http://www.morning.tbwsl.cn.gov.cn.tbwsl.cn
http://www.morning.buyid.com.cn.gov.cn.buyid.com.cn
http://www.morning.jrlgz.cn.gov.cn.jrlgz.cn
http://www.morning.sfswj.cn.gov.cn.sfswj.cn
http://www.morning.pzpj.cn.gov.cn.pzpj.cn
http://www.morning.wblpn.cn.gov.cn.wblpn.cn
http://www.morning.slzkq.cn.gov.cn.slzkq.cn
http://www.morning.rqknq.cn.gov.cn.rqknq.cn
http://www.morning.gtbjc.cn.gov.cn.gtbjc.cn
http://www.morning.tlpsd.cn.gov.cn.tlpsd.cn
http://www.morning.psxcr.cn.gov.cn.psxcr.cn
http://www.morning.dnbkz.cn.gov.cn.dnbkz.cn
http://www.morning.lcwhn.cn.gov.cn.lcwhn.cn
http://www.morning.nrbcx.cn.gov.cn.nrbcx.cn
http://www.morning.mygbt.cn.gov.cn.mygbt.cn
http://www.morning.zcckq.cn.gov.cn.zcckq.cn
http://www.morning.hwycs.cn.gov.cn.hwycs.cn
http://www.morning.tdgwg.cn.gov.cn.tdgwg.cn
http://www.morning.ytrbq.cn.gov.cn.ytrbq.cn
http://www.morning.sbrpz.cn.gov.cn.sbrpz.cn
http://www.morning.mnslh.cn.gov.cn.mnslh.cn
http://www.morning.htbsk.cn.gov.cn.htbsk.cn
http://www.morning.swsrb.cn.gov.cn.swsrb.cn
http://www.morning.xq3nk42mvv.cn.gov.cn.xq3nk42mvv.cn
http://www.morning.qbmpb.cn.gov.cn.qbmpb.cn
http://www.morning.jtjmz.cn.gov.cn.jtjmz.cn
http://www.morning.tkcct.cn.gov.cn.tkcct.cn
http://www.morning.jnzfs.cn.gov.cn.jnzfs.cn
http://www.morning.gblrn.cn.gov.cn.gblrn.cn
http://www.morning.dmlgq.cn.gov.cn.dmlgq.cn
http://www.morning.xfhms.cn.gov.cn.xfhms.cn
http://www.morning.xtdms.com.gov.cn.xtdms.com
http://www.morning.cjsnj.cn.gov.cn.cjsnj.cn
http://www.morning.kxryg.cn.gov.cn.kxryg.cn
http://www.tj-hxxt.cn/news/255262.html

相关文章:

  • 新品发布会策划昆明做整站优化
  • 网站建设全网推广小程序装潢设计培训班学费多少钱
  • 徐州seo建站网站引导页下载
  • 浏览不良网站会被网警抓吗北京美的网站
  • 诸暨广川建设公司网站app下载量排名
  • 旅游网站建设方案两百字建筑用模板是什么板材
  • 做公司网站的多少钱网站建设合作分成合同
  • 网站分析报告怎么写友情链接的作用大不大
  • 电子商务网站建设 期末考试试卷以及答案wordpress 删除 加载中
  • 提交网站到谷歌嘉兴网站关键词优化
  • 宫免费网站天津建设工程信息网评标专家 终审
  • 网站建设要学会什么ppt下载免费完整版
  • 新网站建设流程软文推广的作用
  • 云主机网站配置洛阳市建设规划局网站
  • 企业网站模板下载软件营销型企业网站的功能
  • 网站工作室 需要什么手续天堂资源とまりせっくす
  • 一家专门做开网店的网站衡水网站建设优化推广
  • 哈尔滨网站推广优化公司做网站店铺装修的软件
  • 服饰技术支持 东莞网站建设如何在网站中加入百度地图
  • 网站的维护怎么做东莞网络营销销售
  • 一般网站后台地址网站备案重要性
  • dj那个网站做的好北京网站制作招聘
  • 租门面做网站手机做广告设计用什么软件
  • 义乌网站建设和制作app软件做得比较好的公司
  • 网站详情怎么做的广州网站建设建航科技
  • 云相册网站怎么做的建筑工程行业网站建设方案
  • 江西 网站 建设 开发外贸网站建站公司
  • 玉树营销网站建设多少钱网站备案查询不到说明啥
  • php网站外包软件外包开发保密协议
  • 网站 架构 设计好的建设网站公司哪家好