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

鹤壁做网站的公司个人网站建站教程

鹤壁做网站的公司,个人网站建站教程,wordpress个人版,wordpress 做网站缓存击穿 什么是缓存击穿呢? 在高并发的场景下,一个热点的缓存数据在redis中突然失效(过期或被删除时,所有的读请求都会直接落在数据库上,导致数据库瞬间压力剧增,严重时可能会造成数据库宕机。这种情况就是所谓的“缓存击穿”。(…

缓存击穿

什么是缓存击穿呢?

        在高并发的场景下,一个热点的缓存数据在redis中突然失效(过期或被删除时,所有的读请求都会直接落在数据库上,导致数据库瞬间压力剧增,严重时可能会造成数据库宕机。这种情况就是所谓的“缓存击穿”。(重点在于同一时间访问某一个热点的key数据库中有,redis中没有)

失效的可能原因

  1. 热点数据过期:如果缓存中的某些数据是访问非常频繁的热点数据,这些数据在缓存中过期后,如果有大量请求同时访问,这些请求都会穿透到数据库。
  2. 缓存数据被误删除:由于操作不当或系统bug等原因,缓存中的热点数据被误删除,也会导致缓存击穿。

解决方案

         1.设置热点数据永不过期:对于一些访问非常频繁的热点数据,可以设置为永不过期,然后通过其他机制(如定时任务或后台线程)去更新这些数据。

         2.设置缓存预热:在系统启动或者低峰期时,预先将一些热点数据加载到缓存中,这样在系统高峰期时,这些热点数据就已经存在于缓存中了,从而避免了缓存击穿的发生。

         3.分布式锁:在分布式系统中,可以使用分布式锁来控制只有一个服务实例去数据库查询数据并更新缓存,其他服务实例则等待锁释放。这种方式需要引入分布式锁的实现(这个在我的另一篇博客有写到分布式锁 ——》http://t.csdnimg.cn/50hUT)

缓存雪崩

什么是缓存雪崩呢?

        缓存雪崩指的是缓存中数据大批量到过期时间,而查询数据量巨大,引起数据库压力过大甚至宕机的现象。就是当缓存中的大量数据在同一时间失效,且这些数据的访问量又非常大时,所有的请求都会直接打到数据库上,导致数据库负载急剧增加,可能引发数据库崩溃,进而影响整个系统的正常运行。(重点在于同一时间访问大量的失效的key数据库中有,redis中没有)

失效的可能原因

  1. 缓存数据的过期策略:如果大量的缓存数据被设置为在同一时间点过期,那么在这个时间点,这些缓存数据将同时失效,导致大量的请求直接打到数据库上。
  2. 缓存服务器的故障:如果缓存服务器出现故障,所有原本应该由缓存处理的请求都会直接转发到数据库,给数据库带来巨大的压力。

解决方案

         1.设置合理的过期时间:避免大量的缓存数据在同一时间点过期。可以通过随机设置过期时间或者为不同类型的缓存数据设置不同的过期策略来实现。

         2.设置缓存预热:在系统启动或者低峰期时,提前将热点数据加载到缓存中,避免在高峰期时缓存数据失效导致大量请求直接打到数据库上。

缓存穿透

什么是缓存穿透呢?

    缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时需要从数据库查询,而查询的结果在数据库中也不存在,因此不会写入缓存。这将导致这个不存在的数据每次请求都要到数据库去查询,进而给数据库带来压力。(重点在于访问某个的key数据库中没有,redis中没有,所以每次只能去数据库中查询)

发生的情况

  1. 当用户或系统查询一个在数据库中不存在的数据时,由于缓存中没有缓存该数据(因为数据本身不存在),每次查询都会失败并直接访问数据库。
  2. 如果攻击者利用这个漏洞进行大量伪造ID的请求,将极大地增加数据库的负担,甚至可能导致数据库崩溃。

解决方案

         1.输入参数校验:在请求到达前,对请求参数进行合法性验证,如对请求的ID进行有效性检查,过滤掉无效或恶意的请求。

         2.缓存空对象:对于查询为空的结果,也将其缓存起来(但设置较短的过期时间),这样下次查询相同的数据时可以直接从缓存中返回空对象,避免再次访问数据库。

         3.使用布隆过滤器:使用布隆过滤器对请求进行预处理,过滤掉可能不存在的数据。布隆过滤器通过哈希函数将元素映射到位数组上,可以快速判断一个元素是否可能存在于集合中。如果请求被布隆过滤器拦截,则可以直接返回结果,而无需查询数据库。但是,布隆过滤器存在误判的情况,即可能将不存在的元素判断为存在。(布隆过滤器我的另一篇博客有详细介绍)

http://www.zhongyajixie.com/news/38934.html

相关文章:

  • 做门图网站精准营销的成功案例
  • 营销网站怎么做百度收录的网站多久更新一次
  • 网站建设需求参考文档品牌网站建设解决方案
  • 珠海做网站的黄金网站软件免费
  • 如何查看网站空间网络营销课程
  • 网站怎么优化搜索百度问答官网
  • 网店托管骗局关键词优化seo优化排名
  • 深圳做网站建设比较好的公司整站优化推广
  • 新浪博客怎么做网站seo排名助手
  • 顺德公益网站制作推广注册app拿佣金平台
  • 移动网站制作简述什么是seo及seo的作用
  • 书画艺术网站建设seo网站是什么意思
  • 合肥专业做网站公司十大免费网站推广平台有哪些
  • 邯郸网站设计在哪里北京百度推广代理
  • h5免费制作网站有哪些微信广告投放推广平台多少费用
  • 镇江高端网站定制百度建立自己的网站
  • 公司微网站怎么做的福州百度seo排名软件
  • 快速做效果图的网站叫什么软件网络营销的概念是什么
  • 文化传媒公司网站模板淘数据
  • 长宁网站设计青岛百度seo代理
  • 房产集团网站建设百度一下首页网址
  • 网站建设模板的常德论坛网站
  • 建网站找我产品软文范例软文
  • 德阳响应式网站建设如何推广网站链接
  • 民治做网站多少钱网络营销案例题
  • magento网站建设重庆关键词seo排名
  • iis7建设网站学校seo推广培训班
  • 天津建设工程网站站内推广的方法和工具
  • 舆情分析是什么工作搜索引擎优化seo多少钱
  • 专业网站建设技术产品策划方案怎么做