阿里云代理商-阿里云服务器-阿里云数据库-重庆典名科技

缓存中的一些分类与名词说明及作用

发布时间: 2020-07-23 10:22:10文章作者: 网站编辑阅读量: 242
    缓存中的一些分类与名词说明
    按名称的命名可分为:
    固定名称:通常以表名、字段名、功能名称、前几项的组合......等按各人的喜好来进行命名,调用时也直接方便
    有固定前缀(单个或多个可变后缀或可变后缀+固定后缀组合等):表名+记录Id、临时表名(表名按一定规则进行变动,比如后缀为年月、关联表的Id等)、功能名称+编码......调用时需要动态传入指定的参数,在不知道参数的情况下无法对该缓存进行操作
    按缓存依赖内容可分为:
    依赖指定表:指定表记录增加、修改、删除、更新时,需要同步更新该缓存内容
    依赖指定表中的某些或某条记录:同上
    依赖多个表数据:同上
    依赖指定字段值:默字段值改变时,同步修改(主要用于更新频率比较高的字段,比如页面点击计数等,如果需要用到缓存的,需要独立出来存储,以免更新时执行同步清除功能)
    依赖其他缓存:指定缓存值改动时,需要同步修改所依赖它的其他缓存值(比如依赖某些计算结果或状态值;存储某些临时记录等)
    ......
    按影响缓存值的操作可分为:
    数据表记录的添加、修改、删除;其他缓存值的更新变化;某些计算结果的变化等

    对于所依赖的内容变化后,相关缓存就需要同步更新,这样又可分为实时同步和延时同步等方式

    缓存更新策略通过有:实时更新(主要针对记录级别缓存,直接同步更新指定记录;当然也可以整表更新,但这样对程序执行性能有较大的影响)、超时检测(比如缓存依赖其他缓存时,设置一个最后更新时间与获取时间,通过比较两个时间来确定缓存是否过期)、绝对时间过期(为缓存设定过期时间)、动态时间过期(缓存被访问后过期时间顺延)等。
    按缓存数据集合大小分:
    单值、单条记录、小型数据集合、中型数据集合、大型数据集合、超大型数据集合
    对于缓存管理,数据集越小则存取与转换速度越快,所以当数据集合过大时,就必须进行分割,将集合尽量分成小块,提升缓存使用性能
    按缓存更新频率分:
    固定值(指的是某些配置信息,存储进缓存后它的值就不再变化)、偶尔更新、经常更新、频繁更新
    按缓存级别分:
    无分级缓存、二级缓存
    其他:
    数据缓存、页面缓存......
    一般来说,大部分人使用缓存都是直接key-value,这样种操作简单方便,无需太多的算法去处理。而这样操作对于记录集合比较大的数据(当然不能直接缓存大型或超大型数据)来说,频繁的进行数据存取转换也会消耗不少资源,所以有时需要在这个基础上再加个二级缓存,将NOSQL缓存中读取出来的数据载入IIS缓存中,程序直接编写代码调用,只有相关值更改时再重新加载一次,这样就减少了对大数据转换的性能损耗,当然程序的复杂度就大大提升了很多。

    对于使用二级缓存或依赖其他缓存的缓存来说,经常更新或频繁更新影响是最大的,程序写的不好直接会造成性能几何级的下降(因为每一次更新都需要同步更新相关的所有缓存)。

每一次更新都需要同步更新相关的所有缓存

    缓存指的是将需要频繁访问的网络内容存放在离用户较近、访问速度更快的系统中,以提高内容访问速度的一种技术。缓存服务器就是存放频繁访问内容的服务器。缓存提供了比将访问对象放在InternetWeb服务器上更好的方法,它将需要频繁访问的Web页面和对象保存在离用户更近的系统中,当再次访问这些对象的时候加快了速度。
    无论企业有多大,Web缓存都有助于优化性能和节省宽带。而且如果选择了正确的缓存解决方案,它可以随着企业网络的增长而扩大,而无需进行昂贵且耗时的重建。
    几年以前,理论是超高带宽的Internet连接会使Web缓存毫无用处,但是结果并非如此。即使最快的速率达到30-45Mbps的光纤Internet连接和速度在100Mbps到1Gbps速率的局域网相比仍然很慢,所以性能依旧是一个问题。除此之外,缓存提高了可用性,因为即使托管的Web服务器停机或者由于网络问题而不可达时,缓存的对象拷贝仍然可以访问。如果企业根据流量付费,缓存还可以降低Internet连通性的费用。即使是小公司,缓存也会有利,而且好的缓存解决方案将随着企业级别升级。
联系客服免费领取更多阿里云产品新购、续费升级折扣,叠加官网活动折上折更优惠