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

西安免费建网站设计东营市城市和建设管理局网站

西安免费建网站设计,东营市城市和建设管理局网站,织梦做的网站如何修改,电脑学校一#xff0c;使用方案 在使用redis作为缓存的场景下#xff0c;我们一般使用流程如下 二#xff0c;更新数据场景 我们此时修改个某条数据#xff0c;如何保证mysql数据库和redis缓存中的数据一致呢#xff1f; 按照常规思路有四种办法#xff0c;1.先更新mysql数据使用方案 在使用redis作为缓存的场景下我们一般使用流程如下 二更新数据场景 我们此时修改个某条数据如何保证mysql数据库和redis缓存中的数据一致呢 按照常规思路有四种办法1.先更新mysql数据再更新缓存数据 2.先更新缓存数据再更新mysql数据 3.先删除缓存再更新mysql数据 4.先更新mysql数据再删除缓存 。 这四种方法各有各的弊端并不能完全保证数据一致性采用“先写 MySQL再删除 Redis”的策略这种情况虽然也会存在两者不一致但是需要满足的条件有点苛刻所以是满足实时性条件下能尽量满足一致性的最优解。对于不是强一致性要求的业务可以容忍。什么情况下不能容忍呢比如秒杀业务、库存服务等。 为什么采用删除缓存而不是更新缓存是因为高并发下产生脏数据的要求要比更新缓存的要求更多也就是删除缓存产生脏数据的概率更小一些。 那么问题又来了在高并发的情况下 采用先删除缓存再更新数据库 请求A来了删除缓存请求A更新数据库发生卡顿同时来了请求B请求B发现没有缓存就从数据库查询了数据并生成了缓存此时请求A卡顿结束更新了数据库 这个情况下缓存中的就是脏数据。我们采用延时双删来解决 那么问题又来了第二次删除缓存失败了怎么办看下面先更新数据库再删除缓存 如果删除缓存失败怎么保证数据一致性 1.使用重试机制可以直接在接口中重试但是比较耗费性能 2.使用异步队列重试 3.使用rabbitmq消息中间件来处理 当用户操作写完数据库但删除缓存失败了产生一条mq消息发送给mq服务器。 mq消费者读取mq消息重试5次删除缓存。如果其中有任意一次成功了则返回成功。如果重试了5次还是失败则写入死信队列中。 当然在该方案中删除缓存可以完全走异步。即用户的写操作在写完数据库之后不用立刻删除一次缓存。而直接发送mq消息到mq服务器然后有mq消费者全权负责删除缓存的任务。 因为mq的实时性还是比较高的因此改良后的方案也是一种不错的选择。 总结以上方法只能保证最终一致性不能保证强一致性
http://www.pierceye.com/news/333558/

相关文章:

  • 外贸必看网站离职模板网
  • 内网网站建设正能量不良网站软件下载
  • 制作手机广告的网站吉林省建设厅网站评职称系统
  • 云南建设厅网站资质证书查询自动生成app
  • 柳州正规网站制作公司大连建设厅网站
  • 北京市保障房建设投资中心网站瘫痪广州大型网站建设公司排名
  • 做电池网站的引导页室内设计联盟效果图
  • 查询备案网站成绩查询系统网站开发
  • 网站后台编辑器上传不了图片建筑工程承包网app
  • wordpress多站点插件168工程信息网
  • 网站工信部备案号没有ftp wordpress
  • 家装公司网站建设网站建立网站有免费的吗
  • 网站后台添加投票系统wordpress mip改造
  • 提升网站建设品质信息设计软件排行
  • 温州网站建设优化公司网站营销管理培训班
  • 昆明企业网站开发深圳航空公司最新官网
  • 青浦网站开发泸州建设网站
  • 福建省建设行业企业资质查询网站企业数据查询网站
  • wordpress 英文企业站东城手机网站制作
  • 搭建企业网站需要什么微商城系统网站模板
  • 班级网站怎样做ppt模板免费素材
  • 网站建设及运营 多少钱域名抢注哪个平台好
  • 抚顺营销型网站建设吴江开发区人才网
  • 余姚建设网站wordpress百度分享插件
  • iis网站服务器 建立出现问题吉林市城市建设档案馆官方网站
  • wordpress网站图片迁移打开一个网站为繁体字是怎么做的
  • 东莞规划局官方网站做网站要学一些什么
  • 网站动效是代码做的吗网站模板侵权问题
  • 网站开发语言总结有哪些怎么样让网站宣传自己
  • 网站建设公司哪家好找建设网站公司哪家好