iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >服务器中分布式系统缓存的特征是什么
  • 596
分享到

服务器中分布式系统缓存的特征是什么

2023-06-04 19:06:20 596人浏览 薄情痞子
摘要

本篇内容介绍了“服务器中分布式系统缓存的特征是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、缓存的意义说到分布式系统基本上就离不开缓

本篇内容介绍了“服务器分布式系统缓存的特征是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1、缓存的意义

说到分布式系统基本上就离不开缓存,在高并发,大流量的场景下缓存更是扮演着重要的角色。所以作为一个分布式系统的开发人员是必须熟练掌握缓存的使用与设计。下面是一张简单的系统架构

服务器中分布式系统缓存的特征是什么

从图中我们知道了缓存在系统层面的所处位置,可以在应用系统的内部也可以在外部。那缓存的意义又是什么呢?

缩短系统的响应时间,提升用户体验。如果在系统的内部就已经缓存有了用户请求所需要的结果,那么就不在需要执行其后面操作如外部rpc,DB查询,直接返回结果,给用户流畅般的系统体验。

扛住更大的流量,保护关键系统组件。举个例子在高并发,大流量的场景下如果没有缓存的保护,所有的请求的都直接穿透到我们底层的DB。DB基本上都是扛不住的,DB一旦宕机基本上整个系统就over了,但很多缓存中间件比如redis,memcache却可以扛得住。

提升系统稳定性,提高整体吞吐量。第三点其实由前面两点总结出来的。

2、缓存的分类

根据缓存的存储情况可以分为:集中式缓存,本地缓存,分布式缓存。

集中式缓存:所有的缓存都统一在一个地方管理。

优点:数据集中容易管理,一致性好,实时性好,只要修改一处地方可以立即看到效果。

缺点:集中式缓存通常都存放在系统的外部,高并发请求下带宽很容易成为瓶颈。

优化:减少不必要的数据,只存储真正需要的数据。对放进缓存的数据进行压缩,取出来之后再进行解压。目的都是为了减少数据传输对带完的占用。

本地缓存:又叫localCache,每个应用的本地都留着一份完整的缓存副本。

优点:性能好,相对于集中式缓存不需要访问外部并且没有带宽的压力。

缺点:数据分散,不容易管理。数据一致性差,多个副本之间数据同步有延时。

优化:必须给本地缓存加上一个过期失效时间,并且建立一套相对实时数据更新机制,保证副本的数据能够有效及时更新。

分布式缓存:以集群的方式搭建缓存,比如Redis集群。

优点:高性能,支持动态扩展,支持高可用

分布式缓存集群都是以分片的形式数据分散到多台机器上面去存储,分片的形式有客户端分片(memcahed),服务端分片(redis),分片用的hash算法通常采用一致性hash。这一块涉及的内容比较多,有时间的话后面打算专门独立讨论。

3、缓存的特征

缓存也是一个数据模型对象,那么必然有它的一些特征:

命中率

命中率=返回正确结果数/请求缓存次数,命中率问题是缓存中的一个非常重要的问题,它是衡量缓存有效性的重要指标。命中率越高,表明缓存的使用率越高。

最大元素(或最大空间)

缓存中可以存放的最大元素的数量,一旦缓存中元素数量超过这个值(或者缓存数据所占空间超过其最大支持空间),那么将会触发缓存启动清空策略根据不同的场景合理的设置最大元素值往往可以一定程度上提高缓存的命中率,从而更有效的时候缓存。

4、缓存的清空策略

如上描述,缓存的存储空间有限制,当缓存空间被用满时,如何保证在稳定服务的同时有效提升命中率?这就由缓存清空策略来处理,设计适合自身数据特征的清空策略能有效提升命中率。常见的一般策略有:

  • FIFO(first in first out)
    先进先出策略,最先进入缓存的数据在缓存空间不够的情况下(超出最大元素限制)会被优先被清除掉,以腾出新的空间接受新的数据。策略算法主要比较缓存元素的创建时间。在数据实效性要求场景下可选择该类策略,优先保障最新数据可用。

  • LFU(less frequently used)
    最少使用策略,无论是否过期,根据元素的被使用次数判断,清除使用次数较少的元素释放空间。策略算法主要比较元素的hitCount(命中次数)。在保证高频数据有效性场景下,可选择这类策略。

  • LRU(least recently used)
    最近最少使用策略,无论是否过期,根据元素最后一次被使用的时间戳,清除最远使用时间戳的元素释放空间。策略算法主要比较元素最近一次被get使用时间。在热点数据场景下较适用,优先保证热点数据的有效性。

除此之外,还有一些简单策略比如:

  • 根据过期时间判断,清理过期时间最长的元素;

  • 根据过期时间判断,清理最近要过期的元素;

  • 随机清理;

  • 根据关键字(或元素内容)长短清理等。

服务器中分布式系统缓存的特征是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 服务器中分布式系统缓存的特征是什么

本文链接: https://www.lsjlt.com/news/239293.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 服务器中分布式系统缓存的特征是什么
    本篇内容介绍了“服务器中分布式系统缓存的特征是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、缓存的意义说到分布式系统基本上就离不开缓...
    99+
    2023-06-04
  • 分布式数据库系统的特点是什么
    这期内容当中小编将会给大家带来有关分布式数据库系统的特点是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。本教程操作环境:windows7系统、Dell G3电脑。分布式数据库系统 (DDBS)包含分布...
    99+
    2023-06-26
  • Java分布式缓存系统中必须解决的四大问题是什么
    这篇文章主要介绍了Java分布式缓存系统中必须解决的四大问题是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java分布式缓存系统中必须解决的四大问题是什么文章都会有所收获,下面我们一起来看看吧。分布式缓存...
    99+
    2023-06-30
  • 缓存和分布式编程算法的关系是什么?
    缓存和分布式编程算法的关系是什么? 在现代计算机系统中,缓存和分布式编程算法是两个非常重要的概念。缓存用于提高数据访问速度,而分布式编程算法则用于实现高效的分布式计算。虽然它们看起来是两个不同的概念,但实际上它们之间存在着紧密的联系。 首先...
    99+
    2023-10-05
    缓存 分布式 编程算法
  • 分布式存储服务器的优缺点是什么
    分布式存储服务器的优缺点:1、分布式存储服务器的优点是允许设备资源共享,具有计算迁移功能,能加快计算速度,可靠性高,能保证系统不因一...
    99+
    2023-02-08
    分布式存储服务器 服务器
  • 分布式存储系统中,PHP和Apache的作用是什么?
    分布式存储系统是一种通过网络连接多个计算机来存储和访问数据的系统。在这种系统中,PHP和Apache扮演着非常重要的角色。PHP是一种脚本语言,主要用于开发Web应用程序,而Apache则是一种Web服务器软件。本文将深入探讨它们在分布式...
    99+
    2023-09-30
    分布式 存储 apache
  • 分布式系统中 Python 的作用是什么?
    随着互联网和移动设备的普及,分布式系统的应用越来越广泛。分布式系统的设计和实现需要多种语言和工具的支持,而 Python 作为一种高级编程语言,已经在分布式系统中发挥着越来越重要的作用。本文将介绍 Python 在分布式系统中的应用,并通...
    99+
    2023-10-24
    分布式 面试 path
  • 分布式系统中Java的角色是什么?
    在分布式系统中,Java扮演着至关重要的角色。Java作为一种跨平台的编程语言,可以在不同的操作系统和硬件上运行,这使得Java成为了开发分布式系统的首选语言之一。在本文中,我们将深入探讨Java在分布式系统中的角色以及其优势。 分布式系统...
    99+
    2023-09-10
    unix 分布式 javascript
  • 服务器分布式存储的六大优点是什么
    本篇内容介绍了“服务器分布式存储的六大优点是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!分布式存储往往采用分布式的系统结构,利用多台存...
    99+
    2023-06-02
  • Linux服务器操作系统的六大特性分别是什么
    这篇文章将为大家详细讲解有关Linux服务器操作系统的六大特性分别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。  随着互联网的快速发展,大家对于系统的要求越来越高了,Linux系统凭...
    99+
    2023-06-05
  • 分布式系统中的关键字numy是什么意思?
    分布式系统是现代计算机领域中非常重要的一个研究方向,其中涉及到很多关键字和概念。其中,numy就是分布式系统中一个非常重要的关键字。那么,究竟numy是什么意思呢?本文将为您详细解析。 一、numy是什么? 在分布式系统中,numy是一种用...
    99+
    2023-10-09
    分布式 关键字 numy
  • 分布式系统CAP定理中的P原理是什么
    这篇文章主要介绍“分布式系统CAP定理中的P原理是什么”,在日常操作中,相信很多人在分布式系统CAP定理中的P原理是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”分布式系统CAP定理中的P原理是什么”的疑...
    99+
    2023-07-05
  • web服务器集群、分布式、集中式的概念是什么
    web服务器集群、分布式、集中式是不同的系统架构方式:1. Web服务器集群:指多台独立的服务器通过负载均衡器或者反向代理服务器组成...
    99+
    2023-10-18
    web服务器 服务器
  • PHP 容器对于分布式文件存储系统的性能影响是什么?
    分布式文件存储系统是目前互联网应用中广泛使用的一种技术,它能够很好地解决数据存储和共享的问题。在分布式文件存储系统中,PHP 容器被广泛应用于文件上传和下载,而 PHP 容器对于分布式文件存储系统的性能影响是非常重要的。 首先,我们需要了...
    99+
    2023-10-01
    容器 文件 分布式
  • 集群服务器和分布式服务器的区别是什么
    集群服务器和分布式服务器都是用于处理大规模数据和高并发请求的服务器架构,但它们的区别在于:1. 集群服务器是由多台相同或类似的服务器...
    99+
    2023-06-05
    集群服务器 服务器
  • 分布式系统开发中,Python和Bash的优势分别是什么?
    在分布式系统开发中,Python和Bash是两种常用的编程语言。Python是一种高级编程语言,可以用于各种应用开发,而Bash则是一种解释性的Unix shell,主要用于自动化任务和系统管理。那么在分布式系统开发中,Python和Bas...
    99+
    2023-09-21
    bash 分布式 javascript
  • 分布式系统中使用Java接口的优势是什么?
    在现代软件开发中,分布式系统已经成为了越来越重要的一部分。随着云计算和大数据等技术的发展,分布式系统的应用场景也变得越来越广泛。而在分布式系统中,Java接口的使用具有很多优势。在本文中,我们将会探讨这些优势,并且演示一些使用Java接口的...
    99+
    2023-08-29
    分布式 接口 实时
  • Python和Bash:它们在分布式系统中的角色分别是什么?
    在分布式系统中,Python和Bash都有着非常重要的作用。Python是一种高级编程语言,它具有丰富的库和框架,可以轻松地处理各种任务。Bash是一种Unix shell,它可以在命令行中执行各种任务。本文将介绍Python和Bash在...
    99+
    2023-09-20
    bash 异步编程 分布式
  • 分布式系统中Java语言的优势和劣势是什么?
    随着互联网的迅猛发展,分布式系统的应用越来越广泛。Java作为一种广泛使用的编程语言,也在分布式系统中发挥着重要的作用。本文将探讨Java在分布式系统中的优势和劣势,并通过演示代码来具体说明。 一、Java语言在分布式系统中的优势 跨平...
    99+
    2023-10-09
    分布式 关键字 numy
  • 分布式系统中的GO语言优势与挑战是什么?
    随着互联网和云计算的发展,分布式系统已经成为了现代计算机系统中的重要组成部分。而GO语言,作为一门轻量级的编程语言,被越来越多的企业和开发者所采用。那么,在分布式系统中,GO语言的优势和挑战是什么呢?本文将深入探讨。 一、GO语言的优势 ...
    99+
    2023-06-29
    分布式 面试 教程
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作