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

网站建设在未来的发展趋势大连工业大学研究生院官网

网站建设在未来的发展趋势,大连工业大学研究生院官网,苏州网站建设优化,seo是搜索引擎营销文章目录 缓存雪崩、击穿、穿透1.缓存雪崩造成缓存雪崩解决缓存雪崩 2. 缓存击穿造成缓存击穿解决缓存击穿 3.缓存穿透造成缓存穿透解决缓存穿透 缓存雪崩、击穿、穿透 一般用户数据存储于磁盘#xff0c;读写速度慢。 使用redis作为缓存#xff0c;相当于数据缓存在内存读写速度慢。 使用redis作为缓存相当于数据缓存在内存大大提高系统性能 redis作为缓存就会有缓存异常的三个问题 1.缓存雪崩 缓存都设置了过期时间 造成缓存雪崩 大量缓存数据在同一时间过期 redis故障宕机 若此时有大量用户请求无法在redis处理都直接访问数据库 数据库压力骤增严重造成数据库宕机 形成一系列连锁反应 整个系统崩溃 解决缓存雪崩 大量缓存数据在同一时间过期时 均匀设置过期时间对缓存数据的过期时间加上随机数保证数据不会在同一时间过期 互斥锁当业务线程在处理用户请求时如果发现访问的数据不在redis里加互斥锁保证同一时间内只有一个请求来构建缓存从数据库读取数据再将数据更新到redis当缓存构建完成后再释放锁。 注互斥锁设置超时时间否则若出现请求发生意外阻塞导致其他请求也一直拿不到锁 后台更新缓存让缓存“永久有效”将更新缓存的工作交由后台线程定时更新 当系统内存紧张时有些缓存数据被“淘汰”在“淘汰”和下次更新时间内业务线程读取失败就以为是数据丢失解决方法 后台线程负责定时更新缓存同时频繁地检测缓存是否失效若失效可进行构建缓存 ​ 检测时间间隔不能太长太长导致用户获取的数据是空值而不是真正的数据检测时间间隔最好是毫秒级用户体验一般 业务线程发现缓存数据失效后通过消息队列发送一条消息通知后台线程更新缓存。后台线程收到消息后更新前判断缓存是否存在不存在则进行构建缓存。 ​ 缓存更新及时用户体验好 **注**后台更新缓存机制适合进行缓存预热业务刚上线时提前缓存数据不是等待用户访问才来触发缓存构建 Redis故障宕机时 服务熔断或请求限流机制 ​ 服务熔断暂停业务应用对缓存服务的访问直接返回错误不再继续访问数据库直到redis恢复正常。 ​ 请求限流机制只将少部分请求发送到数据库进行处理再多的请求就在入口直接拒绝服务等到Redis恢复正常 并把缓存预热完后。 构建redis缓存高可靠集群 ​ 通过主从节点的方式构建若redis缓存的主节点宕机从节点可以切换成为主节点继续提供缓存服务 2. 缓存击穿 造成缓存击穿 被频繁访问的热点数据过期此时大量的请求访问该热点数据直接访问数据库数据库很容易被高并发的请求冲垮 缓存击穿可以认为是缓存雪崩的一个子集对应于大量缓存数据在同一时间过期 解决缓存击穿 互斥锁不给热点数据设置过期时间由后台异步更新缓存 / 在热点数据准备过期前提前通知后台线程更新缓存以及重新设置过期时间 3.缓存穿透 对于缓存雪崩、击穿数据仍然在数据库一旦缓存恢复相应的数据就可以减轻数据库的压力 而对于缓存穿透 ​ 用户访问的数据既不在缓存中也不在数据库中导致请求在访问缓存时发现缓存缺失再去访问数据库发现数据库也没有要访问的数据没办法构建缓存来服务后续请求。当有大量的这样的请求时数据库的压力骤增 造成缓存穿透 业务误操作缓存中数据和数据库数据都被误删除黑客恶意攻击故意大量访问某些读取不存在数据的业务 解决缓存穿透 非法请求的限制 判断请求参数是否含有非法值请求字段是否存在 缓存空值或默认值 当线上业务发现缓存穿透时针对查询的数据在缓存中设置一个空值或默认值后续请求可以从缓存中读取到数据而不会继续查询数据库 使用布隆过滤器快速判断数据是否存在避免通过查询数据库来判断数据是否存在。 写入数据库数据时使用布隆过滤器做标记当业务线程确认缓存失效后可以通过查询布隆过滤器判断数据是否存在。大量请求只会查询布隆过滤器和redis而不会查询数据库 注布隆过滤器的实现 设此时有3个哈希函数位图数组长度为8数据库写入数据x 将该数据x得到的三个哈希值 % 位图数据长度得到三个数组下标填入1。 当业务线程查询数据是否存在于数据库时查询 1、4、6下标的值是否为1若有一个为0则说明不存在 存在哈希冲突故若查询布隆过滤器说数据存在于数据库此时数据不一定在数据库但是查询到数据不存在时数据一定不存在 小林coding图解Redis — 七
http://wiki.neutronadmin.com/news/5737/

相关文章:

  • 湖北建设厅政务网站app免费版下载安装
  • 树莓派做网站什么是网络营销?与电商营销有什么区别?
  • 网站优化细节网站建设项目推文
  • 无锡建设网站的公司简介wordpress 去掉标题
  • php网站模版音乐网站整站程序
  • 网站建设与代运营介绍网站开发 设计文档
  • 沈阳微网站建设网站建设资金的请示
  • 站群系统有哪些做网站 中企动力
  • 网站备案及管理的授权书php网站 上传
  • 关于营销方面的网站北京网站建设公司收购
  • 一起做网店官方网站美丽乡村 村级网站建设
  • 太原网站建设找山西云起时个人网站建设方案模板
  • 可以先做网站后备案么网站开发经营范围
  • 灵犀科技+网站开发佼佼者忻府网站建设排名
  • 江苏省建设类高工申报网站什么是建设企业网站
  • 自己建网站做外贸泉州关键词优化
  • 莱芜网站建设价格网站内容需要备案吗
  • 网站平台都有哪些wordpress主题分享
  • 网站后台开发需求网站建设尺寸
  • python做网站感觉好费劲电商网站建设与运营实训
  • 西安网站seo合肥微信网站制作
  • 农村建设网站的重要性服装网站建设需求分析报告
  • 三明网站seowordpress wap模板
  • 城阳做网站找哪家信息网站设计方案
  • 最好的素材网站展示类网站模板
  • 做网站责任wordpress可以建哪些网站吗
  • 外国炫酷网站网站建设服务商排名
  • 网站转化分析wordpress插件微信营销
  • 微信公众号授权给网站合肥网络推广服务公司
  • 怎么通过域名做网站室内设计师网上接单