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

成都手机网站建设开发上海网站建设的企业

成都手机网站建设开发,上海网站建设的企业,wordpress video.js,wordpress源代码修改一、为什么需要Redis作缓存#xff1f; 在业务场景中#xff0c;如果有些数据需要极高频的存取#xff0c;每次都要在mysql中查询的话代价太大#xff0c;假如有一个存在于客户端和mysql之间的存储空间#xff0c;每次可以在这空间中进行存取操作#xff0c;就会减轻mys…一、为什么需要Redis作缓存 在业务场景中如果有些数据需要极高频的存取每次都要在mysql中查询的话代价太大假如有一个存在于客户端和mysql之间的存储空间每次可以在这空间中进行存取操作就会减轻mysql的压力而redis速度快效率高的特点是实现缓存的好选择。 在没有加入缓存的时候客户端和服务端的工作流程如图所示 加入缓存之后 在每次查询数据的时候先在redis中查询如果有就直接返回如果没有再去mysql中查询在mysql中查询到之后先写入到redis中在返回给客户端。 二、实现加入缓存。 三、缓存的更新策略。 先删除缓存在更新数据库 假如在最开始的时候缓存中和数据库中的值都是10在正常的操作流程下会得到如下的结果。 但是在特殊情况下如果在线程一执行的时候线程二插入进来就会造成下图的情况。 而这种情况发生的概率还是很高的因为更新数据库的操作还是相对于写入缓存来说是很慢的在这个过程中极有可能发生这种情况。 先操作数据库在删除缓存 在正常的情况下发生的是如下的操作 这种情况的特殊情况是当缓存中的值失效缓存中没有值数据库中的值还是10会发生下面这种情况。 但是这种情况的概率是小于前者的因为写入缓存的时间明显是小于更新数据库的时间的在这么短的时间内发生更新数据库的操作的概率是很小的。 综上所述应该先操作数据库再删除缓存。 四、缓存穿透。 缓存穿透指的是客户端请求的数据在缓存中和数据库都不存在这样的缓存永远不会生效这些请求都会打到数据库。 短期不一致的原因当查询时没有的id以null存入到redis中假如这时候真正的相同id存入到了数据库在查询时就只能查询到redis中的null值直到TTL过期解决办法是可以手动的在数据库新增的值更新放入redis中。 布隆过滤器是一种基于哈希的算法将二进制存入到布隆过滤器中但它只是一种概率过率他告诉你不存在的时候一定不存在但是当告诉你存在时却不一定存在。 要解决缓存穿透业务逻辑就会变成这个样子。 五、缓存雪崩。 缓存雪崩是指在同一时段大量的缓存key同时失效或者redis服务宕机导致大量的请求到达数据库带来巨大压力。 六、缓存击穿。 缓存击穿实现不用考虑缓存击穿的问题 互斥锁 获取锁和释放锁的逻辑代码实现 因为就算抛异常也要释放锁所以把释放锁的代码放在finally中。 逻辑过期实现
http://www.huolong8.cn/news/65279/

相关文章:

  • 怎么更换网站图片学校网站建设调查报告
  • 网站开发最新技术湖南省城乡建设勘测院 网站
  • 如何建一个网站教程建设好网站为什么读取不到文件
  • 生物商城网站建设自己可以模拟装修app
  • 重庆网站建设制作wordpress 树形主题
  • 自己做网站名电子章违法吗课程网站建设ppt模板
  • 山东网站建设价格实惠搭建网站的空间哪里买
  • 别墅效果图网站网络如何推广
  • 网站设计风格确认书电子商务专业就业方向及前景分析
  • 镇江网站建设优化网站asp代码
  • 网站建设 展滔科技大厦wordpress 自动水印
  • 在微信怎样搞做微视频网站一千元做网站
  • 通辽网站开发三文鱼电商代运营
  • 北京网站定制跨境电商app有哪些
  • 制作网站比较大的几家公司百度投稿平台
  • 成都网站建设g冠辰dede网站建设的个人总结
  • 网站建设运用软件石家庄是几线城市
  • 怎么做套版网站广平企业做网站推广
  • 学校部门网站建设总结企业 北京 响应式网站
  • 北京哪里有做网站的廊坊智能模板建站
  • 优秀的学校网站欣赏电子商城网站开发文档
  • 老外做的汉语网站创建全国文明城市主题班会教案
  • 南昌网站建设和推广网站改版 大量旧页面
  • 九江专业制作网站小程序电商网络推广培训
  • 池州建行网站建设部网站注册人员
  • 搜索网站有哪些深圳市招聘网站
  • 支付网站建设费账务处理室内设计师常用网站
  • 开发建设网站需要什么人才wordpress 插件语言包
  • 福建网站建设公司局域网内建网站
  • 塘坑网站建设wordpress编辑器大家用什么