首页 > 其他分享 >缓存概念介绍

缓存概念介绍

时间:2022-10-11 22:12:55浏览次数:46  
标签:缓存 持久 数据库 介绍 概念 命中 服务器 数据

 

一、缓存是什么?

        缓存其实是内存中一个以key-value(键值对)的形式存储数据的一个空间。当然,缓存也可以持久化。常用的缓存技术:Memcached、Ehcache、OsCache、Redis等等。

二、缓存的优点(作用)

        1、缓存可以减小数据库压力,避免与数据库发生多次交互。

        2、相对于读取数据库来说,内存操作更快,提高服务器响应速度。

三、什么样的数据适合保存到缓存中

        1、经常被查询的数据并且不经常被修改的数据。

        2、系统的常量。

四、缓存的缺点

        1、内存大小受限制,需要一个合理的缓存策略,总没有办法做到十全十美,我们只能尽量做到最好。

        2、缓存的命中率问题(命中率=命中数/(命中数+没有命中数)),也就是什么数据要缓存什么数据不需要缓存,这个没有一个唯一标准,没准一天前是热词,一天后它消失了,之前还是生词,忽然间它热了,是会随时变化的。

五、为什么缓存要做持久化

  1、也是最主要的,持久化的目的是为了保证数据的完整性。假如服务器突然挂掉,我们的数据不会丢失。

  2、变相的减轻数据库压力,如果我们重启了服务,我们之前的缓存就都消失了,这时候我们要重新缓存,这意味着所有的数据都要查询数据库,增大了数据库的压力,如果做了持久化则可以快速恢复缓存,变相的减轻我们数据库压力。

六、缓存的使用流程以及维护

        当我们访问服务器的时候,首先到缓存服务器中查询结果,如果结果为空,则需要查询数据库。查询之后,将结果存放到缓存中,再返回给客户端。下一次访问该数据的时候,就可以从缓存中取出数据,如果缓存中已经有相关数据,则直接返回给客户端。 

        当数据库数据发生改变的时候,需要维护缓存中的数据。例如:数据库中数据被删除后,需要将缓存中对应的数据也要删除。如果不及时处理,则容易出现脏数据(本来在数据库中已经被修改或被删除,而还能读取到和使用)。

标签:缓存,持久,数据库,介绍,概念,命中,服务器,数据
From: https://www.cnblogs.com/shuaishuaiguo/p/16782815.html

相关文章

  • 什么是缓存雪崩?服务器雪崩的场景与解决方案
    什么是应用服务雪崩雪崩问题分布式系统都存在这样一个问题,由于网络的不稳定性,决定了任何一个服务的可用性都不是100%的。当网络不稳定的时候,作为服务的提供者,自身可能会被......
  • rsync介绍
    ####rsync是一个同步的工具,这个工具非常的重要,日常工作中会经常用到,比如从A机器到B机器传输一个文件,去备份一些数据到远程等,不仅仅可以本地到远程,也可以本机到本机的A目录......
  • mAP定义及相关概念
    mAP定义及相关概念P=>precision,即准确率R=>recall,即召回率PR曲线=>即以precision和recall作为纵、横轴坐标的二维曲线。一般来说,precision和recall......
  • django配置文件介绍,drf全局异常处理,drf接口文档
    内置认证类、权限类、频率类django配置文件介绍过滤类的其他使用全局异常处理接口文档内置认证类、权限类、频率类#内置的认证类 BasicAuthenticatio......
  • 数据结构—基本概念和术语
    1、数据    数据(Data)是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。2、数据元素    数据元素(DataElement)是数据的基本单......
  • 物体的三维识别与6D位姿估计:PPF系列论文介绍(二)——PPF-MEAM
    ​ 圈里有高质量教程资料、可答疑解惑、助你高效解决问题文章“PointPairFeature-BasedPoseEstimationwithMultipleEdgeAppearanceModels(PPF-MEAM)forRobotic......
  • docker和Namespace技术介绍
    一、docker介绍Docker是基于linux内核实现,Docker最早采用LXC技术(LinuXContainer的简写,LXC是Linux原生支持的容器技术,可以提供轻量级的虚拟化,可以说d......
  • 512多表关系介绍和513多表关系介绍一对多关系实现
    多表关系介绍1.一对一(了解):如:人和身份证。分析:一个人只有一个身份证,一个身份整只能对应一个人2.一对多(多对一):如部门员工。分析:一个部门有多个员工,一个员工只能,对应一个部......
  • 【CPU】缓存一致性、CPU基础
    PU的位宽、寻址总线、数据总线CPU的位宽和寄存器一次能够存储的大小相关,比如一个大于4字节的数据,我们用32位的CPU显然是无法存储它的,自然就无法一次性处理它而总线位宽和......
  • java 中级进阶高级 java 23种设计模式 视频教程 详细介绍+代码详解 +应用场景分析+
    ​​​​java中级进阶高级23种设计模式详细介绍+代码详解2019-04-06日最新更新蒋浩宇技术总监/CTO/高级工程师/技术专家主要讲解关于java、python、c++、前段、html5、jq......