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

佛山网站快速优化排名搜索优化师

佛山网站快速优化排名,搜索优化师,机场建设网站,荆州seo公司Redis中间件常常被用作缓存#xff0c;而当使用了缓存的时候#xff0c;缓存中数据的维护#xff0c;往往是需要重点关注的#xff0c;尤其是重点考虑的是数据一致性问题。以下是维护数据库缓存的一些常用方案。 1、先删除缓存#xff0c;再更新数据库 导致数据不一致的…Redis中间件常常被用作缓存而当使用了缓存的时候缓存中数据的维护往往是需要重点关注的尤其是重点考虑的是数据一致性问题。以下是维护数据库缓存的一些常用方案。 1、先删除缓存再更新数据库 导致数据不一致的场景 最终结果数据库存储的是新值缓存存储的是旧值导致数据不一致 2、先更新数据库再删除缓存 最终结果A线程删除缓存失败导致缓存中一直存的是旧值。但是实际上删除缓存失败这个异常场景不在此范围讨论中可以加入重试机制因此此方案数据一致性问题不大但是可能导致穿透问题缓存数据删除后瞬间大量请求穿过缓存直接打到数据库。但是但凡是删除缓存都有可能导致穿透问题 3、先更新数据库然后更新缓存 最终结果更新缓存的时间不确定有先有后可能导致旧值覆盖新值的问题。而且性能不好一万次请求就得更新一万次缓存。 4、延时双删 在方案一的基础上增加了一次删除缓存的操作。回想方案一导致数据不一致的问题是A线程在B线程之后更新完数据库后没有去处理缓存数据。因此在更新完数据库后再删除一次缓存便可本质上就是方案一与方案二的结合 总体流程先删除缓存然后再更新数据库更新完数据库后延时再删除一次缓存做兜底操作。 更新数据库前删一次缓存是因为防止在更新数据库后的瞬间有人直接命中缓存拿到旧数据 更新数据库后再删一次缓存是因为有人通过查库拿到旧数据设置值进了缓存方案一数据不一致的情况之所以要延时是因为要保证第二次删除的时机要在其他人写数据之后否则白删。 注意既然是删除缓存数据依然会导致缓存穿透的问题。 根据实际业务场景我选择了方案三先更新数据库再更新缓存。原因如下 1、修改缓存的入口只有一个在控制台中设置不存在多个线程修改缓存的情况 2、读的入口有多个有许多定时器会在自己的业务中读缓存值有并发且量十分大因此需要考虑缓存穿透问题不能删除缓存 3、缓存中存的实际是业务配置读多写少大量更新操作导致性能消耗的场景不存在 每一种方案都存在他的优缺点。在理想中我们往往希望能适用所有场景的方案但是现实往往很骨感一劳永逸的方法几乎只存在于某个乌托邦。方案没有好坏之分只有是否适合自己的应用场景之别。
http://www.dnsts.com.cn/news/181426.html

相关文章:

  • 宜宾建设教育培训中心网站wordpress 七牛 水印
  • 虚拟主机网站被挂马权鸟拓客app下载
  • 仿牌网站服务器建筑业招聘信息平台
  • 西安网站维护 策划买卖友情链接
  • 浙江网站建设情况json做网站
  • 阿里网站注册德阳响应式网站建设
  • 风险网站怎么解决方法给企业做网站挣钱吗
  • 上传自己做的网站吗做网站大公司还是小公司
  • 上海网站建设电话和女的做那个视频网站
  • 长沙手机网站首页设计公司大型淘宝客返利网站建设
  • 网站资料要提供哪些简述建设网站的基本流程
  • 郑州建网站哪家好罗庄区住房和城乡建设局网站
  • 上海房产网站建设十堰建设银行官方网站
  • 网站模板价格东莞网站设计讯息
  • 云南个旧建设局网站photoshop手机版下载官网
  • 网站没被收录网络管理系统admin
  • 网站空间每年继费到哪交百度指数在线查询前100
  • 千享科技网站建设餐饮网站开发毕业设计
  • 合肥网站建设推广服务大航母网站建设与运营
  • 邯郸建设网站修网络
  • 陕西省城乡建设网站手机制作3d动画
  • 城乡建设部网站稽查执法专栏wordpress移动端发表失败
  • 湘乡网站建设生物医药基地网站建设
  • 住房和城乡建设部网站执业资格注册中心哪些网页游戏好玩
  • 百度站内搜索 wordpressphp网站建设一流程
  • Wordpress建站用什么系统免费如何创建网站平台
  • 手机网站营销页大连哪家公司做网站好
  • 瑞昌市环保局网站建设外贸网站如何做的好
  • php 网站做分享功能平面设计公司企业文化
  • 兴化市住房和城乡建设局网站莱特币做空国外网站