分布式缓存的四大痛点

news/2024/5/6 5:47:18/文章来源:https://blog.csdn.net/ybb_ymm/article/details/128433189

目前开发中经常用到的缓存,是我们必不可缺的,他大大的提高了我们整个项目的响应速度和并发量。但是带来好处的同时,也给我们带了了新的问题:缓存穿透、缓存击穿、缓存雪崩以及缓存一致性这么四个问题,也是分布式缓存的四大痛点!
# 缓存穿透
什么叫缓存穿透呢?

缓存穿透:就是请求在缓存中没有命中,去请求数据库。

缓存穿透带来的危害就是,假如他一直请求,找不到这个数据,便会去请求数据库,不断的请求就会造成服务的性能故障,导致服务宕机。

这里说一种最简单的解决方案。当在数据库中查不到数据,我们就将null存在缓存中,然后赋值一个过期时间即可,这样就能减少数据库的请求次数。

# 缓存击穿

缓存击穿,就是一部分缓存,同时后期了, 最终大量的请求去查询数据库了。
解决他也是很容易的,将我们的缓存设置不过期、过期时间分散,或者在请求的时候更新缓存的过期时间,这三种都可以很好的解决我们的问题

# 缓存雪崩

缓存雪崩,当我们缓存系统意外宕机或者故障了,流量瞬间切换到数据库,数据服务宕机后导致其他服务挂掉,形成了一连串的故障。

这里解决的方案我们也准备了,首先就是缓存做高可用,主从等等,另外也可以通过限流,当缓存出现故障,我们限制访问的流量来解决

# 缓存的一致性
最后一个问题,缓存数据的一致性,也是最难搞得一个棘手问题。

相信我不说,大家也知道他是什么意思。就是缓存和数据库中的数据不一致!

解决方案:

- 当读取缓存的时候,如果缓存里没有相关数据,则执行相关的业务逻辑,构造缓存数据存入到缓存系统;
- 当与缓存项相关的资源有变动,则先删除相应的缓存项,然后在数据库中对资源进行更新

更多编程内容,请关注公众号《coder练习生》‘,如果觉得有用,也可赠送作者一杯咖啡

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_240108.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IT大侦“碳”:VxRail的可持续法宝

环境Environmental      社会责任Social Responsibility      企业治理Corporate Governance      随着碳达峰、碳中和的逐步推进,越来越多的“大厂”或各行业的明星企业都开始重视自己的ESG报告,已然成为了商界新风尚。      可持续发展战略也与前沿技术密切相…

Java项目:Springboot体育器材管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 体育器材管理系统主要包含以下功能: 登录注册; 体育器材管理:显示器材表、显示价目表、显示供应商表&#x…

4.2、网络层提供的两种服务

1、面向连接的虚电路服务 虚电路服务的核心思想:可靠通信由网络自身来保证\color{red}可靠通信由网络自身来保证可靠通信由网络自身来保证 当两台计算机进行通信时,必须建立网络层的连接\color{red}网络层的连接网络层的连接----虚电路VC\color{red}虚…

Java+SpringBoot电影订票系统(含源码+论文+答辩PPT等)

项目功能简介: 该项目采用技术后台:SpringBoot、Spring、Springmvc、Springdata、MySQL数据库、前台:FreeMarker、css、Javascript等,项目含有源码、论文、配套开发软件、软件安装教程、项目发布教程等 项目功能介绍: 本系统主要的…

Hi,运维,你懂Java吗--No.4:JVM-概述

作为运维,你不一定要会写Java代码,但是一定要懂Java在生产跑起来之后的各种机制。 本文为《Hi,运维,你懂Java吗》系列文章 第四篇,敬请关注后续系列文章 欢迎关注 龙叔运维(公众号) 持续分享运…

筛法(线性筛,厄拉多塞筛)

在前前前前前前…的博客中,我们主要谈了欧拉筛和埃氏筛. 今天我们主要来聊一聊线性筛和厄拉多塞筛(其实和埃氏筛和欧拉筛本质上没区别哎).其实在这两种筛法中厄拉多塞筛最好懂(就连本蒟蒻一看代码就明白了…别看这个名字,容易糊弄人) 首先是厄拉多塞筛"粉墨登场"::…

某农业学校 算法设计与分析-第五次实验-回溯算法

1. 罗密欧与朱丽叶的迷宫问题 问题描述 罗密欧与朱丽叶的迷宫。罗密欧与朱丽叶身处一个mn的迷宫中,如图所示。每一个方格表示迷宫中的一个房间。这mn个房间中有一些房间是封闭的,不允许任何人进入。在迷宫中任何位置均可沿8 个方向进入未封闭的房间。罗…

深度学习常见概念字典(感知机、全连接层、激活函数、损失函数、反向传播、过拟合等)

这一章的所有内容均是为了进入深度学习具体的某某网络而准备的,简单但是非常有必要。 1. 神经网络(neural networks)的基本组成 1.1 神经元(neuron) 神经元(neuron) 是神经网络(n…

Djiango实现用户管理增删改成功能实战

1.0定义 前后端不分离模式 前后端分离是指前端页面看到的效果都是由后端控制,即后端渲染HTML页面,前端与后端的耦合度比较高 前后端分离模式 后端仅返回前端所需要的数据,不在渲染HTML页面,不在控制前端的效果,至…

CodeQL代码静态污点分析引擎排查漏洞模式

文章目录前言环境搭建1.1 codeql基础1.2 vscode插件1.3 生成数据库1.4 HelloWorldcodeql语法2.1 语法结构2.2 常用类库2.3 谓词介绍2.4 污点分析漏洞检测3.1 初步结果3.2 解决误报总结前言 对于代码审计的工作,最早期的安全人员会以人工审计的方式来审计项目代码&a…

RabbitMQ 第二天 高级 7 RabbitMQ 高级特性 7.1 消息的可靠投递 7.1.1 confirm【确认模式】

RabbitMQ 【黑马程序员RabbitMQ全套教程,rabbitmq消息中间件到实战】 文章目录RabbitMQ第二天 高级7 RabbitMQ 高级特性7.1 消息的可靠投递7.1.1 confirm【确认模式】第二天 高级 7 RabbitMQ 高级特性 7.1 消息的可靠投递 7.1.1 confirm【确认模式】 在使用 Ra…

【数据预处理】基于Pandas的数据预处理技术【california_housing加州房价数据集】_后9个任务

文章目录一.需求分析二.需求解决2.1 对第一个特征(收入中位数)排序后画散点图2.2 对第一个特征(收入中位数)画分位数图并分析2.3 【选做】对所有特征画分位数图并进行分析2.4 使用线性回归方法拟合第一个特征(收入中位…

【C语言进阶】指针练习题

写在前面 这是指有关指针的小题 正文 练习一 int main() {int a[5][5];int (*p)[4];pa;printf("%p,%d", &p[4][2]-&a[4][2], &p[4][2]-&a[4][2] );return 0; } 解析: a[4][2]为如图粉色部分,p[4][2]为如图蓝色部分。a的…

Java项目:springboot药品管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目属于前后端分离的项目,分为两个角色药品管理员和取药处人员 药品管理员: 登录、退出、药品信息录入、药厂信息录入…

买不到的数目(蓝桥杯C/C++A组真题详解)

题目详细: 题目思路: 对于这个题有一个定理 如果 a,b 均是正整数且互质,那么由 axby,x≥0,y≥0 不能凑出的最大数是 : a*b-a-b 具体的证明过程这里就不赘述 感兴趣的同学可以自行查找 这里就提供一种思…

RabbitMQ 第二天 高级 7 RabbitMQ 高级特性 7.2 Consumer Ack

RabbitMQ 【黑马程序员RabbitMQ全套教程,rabbitmq消息中间件到实战】 文章目录RabbitMQ第二天 高级7 RabbitMQ 高级特性7.2 Consumer Ack7.2.1 Consumer Ack7.2.2 Consumer Ack 小结7.2.3 消息可靠性总结第二天 高级 7 RabbitMQ 高级特性 7.2 Consumer Ack 7.2.…

C#语言实例源码系列-伪装文件

专栏分享点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册 👉关于作者 众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中…

matlab神经网络求解最优化,matlab神经网络训练数据

1、神经网络的准确率是怎么计算的? 其实神经网络的准确率的标准是自己定义的。 我把你的例子赋予某种意义讲解: 1,期望输出[1 0 0 1],每个元素代表一个属性是否存在。像着4个元素分别表示:是否肺炎,是否肝…

你可能不知道的DOM断点调试技巧

前言 作为一个前端,DOM断点应该是我们非常熟悉的,也是我们日常工作中经常要用到的一种调试技巧;但是下面这些DOM断点调试技巧你可能不知道,且听我一一道来。 监听元素 有这样一种场景,当DOM中某个元素移除或者元素属…

数据结构---图

(一) 相关知识点 图(graph):图是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中的顶点的集合,E是图G…