缓存
文章平均质量分 90
斑马工
别在最好的年纪,选择安逸。
展开
-
深入浅出缓存设计---6、缓存灾难问题
缓存灾难问题缓存穿透有些数据查询频率很高的时候,我们会将数据存入到缓存,用户每次查询直接查询缓存即可,从而提高用户访问数据的效率。比如获取用户为 a 的抢红包记录,此时如果每次查询数据库效率都很低,我们可以第1次从数据库查询 a 最近的前10条抢红包记录,然后将记录存入到Redis缓存,下次直接查询Redis缓存即可。每次用户抢红包,谁抢到了红包,我们会将抢到红包的用户信息按照抢红包的金额大小的前100名用户信息公示出去,这里也可以采用这种方式来做。当然,也不是所有数据都适合做缓存,需要根据数据特原创 2022-04-19 00:20:35 · 11604 阅读 · 0 评论 -
深入浅出缓存设计---5、Nginx缓存
Nginx缓存为了提升网站的整体性能,我们一般会采用缓存,从宏观层面来说,会采用浏览器缓存和后端缓存,Nginx处于Web网站的服务最外层,而且支持浏览器缓存配置和后端数据缓存,用它来做部分数据缓存,效率更高。Web缓存是可以自动保存常见文档副本的HTTP 设备。当Web请求抵达缓存时,如果本地有“已缓存的”副本,就可以从本地设备而不是服务器中提取这个 档。OpenRestry安装OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第原创 2022-04-06 15:51:24 · 9945 阅读 · 0 评论 -
深入浅出缓存设计---4、Redis Sentinel
Redis Sentinel哨兵是用来解决redis高可用性的,可以监控集群中主从的变化,然后进行故障转移。哨兵讲解一套合理的监控机制是Sentinel节点判定节点不可达的重要保证,Redis Sentinel通过三个定时监控任务完成对各个节点发现和监控。周期10秒监控每隔10秒,每个Sentinel节点会向主节点和从节点发送info命令获取最新的主从结构,该命令有3个作用:通过向主节点执行info命令,获取从节点的信息,这也是为什么Sentinel节点不需要显式配置监控从节点当有新的从节点原创 2022-04-06 15:50:10 · 10012 阅读 · 0 评论 -
深入浅出缓存设计---3、Redis集群配置
Redis集群配置这里安装6个redis,配置如下:Redis节点IP端口redis-7001172.18.0.27001redis-7002172.18.0.37002redis-7003172.18.0.47003redis-7004172.18.0.57004redis-7005172.18.0.67005redis-7006172.18.0.77006Redis集群配置现在安装对应的应用软件一般都推荐使用Dock原创 2022-04-06 15:49:17 · 9492 阅读 · 0 评论 -
深入浅出缓存设计---2、高并发下缓存架构设计
高并发下缓存技术选型双十一大促销活动有很多技术挑战,而最大的挑战之一就是高并发,而应对高并发的最有效手段之一就是分布式缓存,分布式缓存不仅仅是缓存要显示的数据这么简单,还可以在限流、队列削峰、高速读写、分布式锁等场景发挥重大作用。分布式缓存可以说是解决高并发场景的一头野兽。双十一活动大促分析双十一无论抢红包、商品秒杀、抢优惠券,并发量都是超高,流量可以说是平时几倍乃至几十倍,对服务器造成的压力也几何数字增长,因此双十一必须要考虑各种场景的技术解决方案。面对双十一巨大流量涌入,需要解决的问题我们做一原创 2022-04-06 15:39:18 · 10200 阅读 · 0 评论 -
深入浅出缓存设计---1、缓存的应用
缓存的应用缓存(cache),原始意义是指访问速度比一般随机存储器(RAM)快的一种高速存储器,设置缓存是为了更好的发挥计算机系统的高性能。缓存分类应用级缓存应用级缓存也就是我们平时写的应用程序中所使用的缓存。在平时程序中一般是按照如下操作流程来实现缓存的操作,首先张三用户读取数据库,并将读取的数据存入到缓存中,其他用户读取的时候,直接从缓存中读取,而不用查询数据库,从而提高程序的执行速度和效率。系统级别缓存系统级别缓存是抛开我们应用程序之外硬件的缓存操作,例如某些CPU的缓存操作和如下图多级缓原创 2022-04-06 15:37:50 · 9574 阅读 · 0 评论