缓存管理需求说明

合集下载

需求规格说明书

需求规格说明书

《需求规格说明书》概述为了使更好的用户了解本产品以及使小组人员更有计划的进行项目,特编写本需求规格说明书。

(1)用户简介该产品是面向广大手机用户的,因此本软件的用户很广泛,由于大家对手机很了解,对手机阅读器更不陌生,所以本软件在使用过程中可以省去很多培训时间,这使小组人员能够花更多时间在软件优化上。

(2)项目的目的与目标本项目是为了开发出一款新的手机阅读器。

该阅读器将会打破原来阅读器不能打开一些常用文件格式的局限,从而更好地提升手机特别是普通手机的功能。

这款软件可以打开TXT,DOC,PDF,PDG四种格式的文件,并且能够连接互联网获取这些格式的软件,这是本软件的特色和核心。

术语定义(1)参考资料该软件是在一些原有的的阅读器上做一些改进,因此在术语定义时,小组人员会参考一些阅读器开发方面的资料和一些JAVA语言开发资料。

(2)相关文档手机阅读器开发相关书目,JAVA语言开发教程。

(3)版本更新信息小组人员在以后的工作中会继续进行本软件的改进,估计每三个月会发布一个新的版本。

目标系统描述(1)组织结构与职责项目角色人数角色描述项目组长、系统设计师 1 负责项目的管理、概要、需求分析程序员,美工 3 开发项目系统分析、测试员 3 代码测试(2)可能的变化:对于目标系统,将来也许会出现某些变化,对于此,小组人员回应对变化做出相应的措施,来适应变化。

目标系统功能需求系统功能是对软件的功能进行整体的描述,也是小组人员进行下一步工作的蓝图,以下是系统功能总览表:由于是第一个版本,不免会出现些功能不符合某些用户的需求问题,在以后的开发中,会有更为全面的功能。

目标系统性能需求平台适应系统性能方面,要求对于不同的平台,软件会自动做出相应的回应,从而适合该平台。

文件格式适应对于不同的文件格式,能够自动区分出来,并按照相应文件格式正确打开,达到能够阅读的效果。

并且能够在该文件格式下正确进行相应的设置。

设置方面在不同的平台,不同的机型进行设置时,要能够正确完整的达到相应的设置效果,不能够出现设置功能不可用的问题。

thinkphp_cache()用法和场景_解释说明

thinkphp_cache()用法和场景_解释说明

thinkphp cache()用法和场景解释说明1. 引言1.1 概述在现代网站和应用开发中,缓存起着非常重要的作用。

它可以提高系统性能、减轻数据库负载、加快数据访问速度等。

而在thinkphp框架中,我们可以使用`cache()`方法来进行缓存相关操作。

本文将介绍thinkphp中`cache()`方法的基本用法、常见场景应用,以及一些使用技巧和注意事项。

1.2 文章结构本文将分为五个部分进行讲解。

首先是引言部分,介绍文章的背景和结构;其次是thinkphp `cache()`的基本用法,包括缓存读取、写入和删除;然后是常见场景应用,如页面缓存优化、数据查询缓存加速和表单重复提交避免;接下来是使用技巧和注意事项,包括设置缓存有效期、清空所有缓存和指定键名的缓存以及高效利用缓存包装函数和选择合适的驱动类型;最后是结论部分,总结全文并提出思考或建议。

1.3 目的本文旨在帮助读者深入了解thinkphp框架中`cache()`方法的使用,并指导读者在实际项目开发过程中合理地应用缓存技术,以提升系统性能和用户体验。

通过掌握`cache()`方法的基本用法、常见场景应用和使用技巧,读者能够更加灵活地运用缓存机制解决实际问题,并避免一些常见的误区和错误使用。

2. thinkphp cache()的基本用法2.1 缓存读取:thinkphp的缓存读取功能通过调用cache()函数实现。

cache()函数接受一个参数,即要读取缓存的键名。

例如,我们可以使用如下代码来读取名为“user”键的缓存数据:```$data = cache('user');```在上述代码中,cache('user')表示读取名为“user”的缓存数据,并将其赋值给变量$data。

如果成功读取到了缓存数据,则$data变量将包含该数据,否则为空。

2.2 缓存写入:与缓存读取类似,thinkphp的缓存写入功能也是通过cache()函数来实现的。

primocache二级缓存 缓写 解释说明

primocache二级缓存 缓写 解释说明

primocache二级缓存缓写解释说明1. 引言1.1 概述Primocache二级缓存是一种用于提高系统性能的缓存技术。

它通过将频繁访问的数据存储在高速缓存中,以加快数据访问速度和降低磁盘I/O负载。

本文将详细介绍Primocache二级缓存的原理、应用场景,以及对其优势和不足进行分析。

1.2 文章结构本文共分为五个部分。

首先,在引言部分概述了文章的内容和目标。

其次,在第二部分我们将详细介绍Primocache二级缓存的定义和原理。

第三部分将解释说明缓写技术,并明确其与缓读技术的差异与联系。

接下来,在第四部分中,我们将探讨Primocache二级缓存的优势和不足,并且可能存在的问题一并进行了回顾。

最后,在结论部分总结了本文所阐述的主要观点,并对Primocache 二级缓存未来发展提出了展望和建议。

1.3 目的本文旨在深入介绍Primocache二级缓存以及相关技术,为读者提供全面而清晰的理解。

通过阐述其工作原理、应用场景和优缺点,读者将更好地了解如何在实践中使用Primocache二级缓存,以提高系统的性能和效率。

此外,本文还旨在为读者提供对Primocache未来发展的前瞻性观察和建议。

2. Primocache二级缓存:2.1 什么是Primocache二级缓存:Primocache二级缓存是一种软件技术,旨在提高计算机系统的性能和响应速度。

它通过将常用数据存储在更快的介质上来加速访问和读写操作。

Primocache可被安装在Windows操作系统上,并利用计算机系统中的闲置内存或固态硬盘作为缓存,以降低对慢速磁盘访问的依赖。

2.2 缓存原理:Primocache使用了一种称为"数据块"的概念。

数据块是指从主存储器(如硬盘)中读取或写入数据时的最小单位。

当数据被首次访问时,Primocache会将其复制到缓存中,并根据特定的策略(如LRU算法)决定哪些数据块将保留在缓存中,以及哪些将替换掉。

缓存系统功能需求

缓存系统功能需求

缓存系统功能需求报告一、系统管理功能1、支持Web后台管理2、支持内部网段服务地址设置3、支持web视频的所有视频格式缓存4、可扩展支持主流客户端视频缓存,如:ppstream、pptv等5、http缓存可设置缓存文件大小,触发缓存次数等6、支持黑名单功能,针对某些特定网站不缓存7、http缓存内容可管理,可根据文件名、大小、下载次数、访问时间等查询,并在后台支持直接下载利用、删除等操作。

8、支持的HTTP下载文件类型有:exe、zip、rar、iso、rmvb、avi、mp3、wma、flv、wmv、txt、xls、3gp、ape、bat、chm、dat、doc、docx、flc、mdf、mid、mkv、mov、mp4、mpe、mpeg、mpg、pdf、pmp、ppt、ra、ram、rm、smi、tp、ts、wav、wps 等9、支持的HTTP客户端包括IE、迅雷、快车等主流互联网HTTP下载客户端9、P2P下载缓存支持的P2P客户端包括迅雷、比特彗星、比特精灵、超级旋风、快车等全部互联网主流P2P下载客户端,支持的P2P 下载协议包括常规P2P协议、HTTP协议、迅雷P2SP协议、迅雷加密协议、FLASHGET加密协议等。

8、统计功能缓存系统支持流量流入流出统计,命中率统计,统计支持表格和饼图。

表格可导出。

可查询在线用户、监控系统连接数。

9、日志管理缓存系统支持系统异常日志报警记录10、缓存系统空间可平滑扩展。

11、系统支持主动缓存和被动缓存手工设置,并能实现随时切换,最好能区别针对不同网站实现主被动缓存自动定义。

12、缓存系统能后台统计缓存资源的利用率,可支持多种方式查询。

13、缓存下载内容支持断点续传。

14、缓存系统支持镜像模式。

15、后台管理支持缓存系统性能检测,服务器CPU利用率、硬盘空间使用情况、缓存设备流量、内网连接数、任务数以及流量分析功能。

16、内容管理:主要功能是对用户下载的内容进行归类、统计,方便查询。

cacheable_el表达式_理论说明

cacheable_el表达式_理论说明

cacheable el表达式理论说明1. 引言1.1 概述本文讨论的主题是cacheable el表达式的理论说明。

在现代的软件开发过程中,大量使用了el表达式来简化和优化代码编写。

而cacheable el表达式则是对el 表达式的进一步扩展,通过缓存计算结果来提高程序的性能。

本文将详细介绍cacheable el表达式的定义、原理以及在实际应用中的优势与局限性。

1.2 文章结构本文分为五个部分进行阐述。

首先,在引言部分,我们将对文章进行概述,并介绍整篇文章的结构。

接下来,在第二部分中,我们将详细解释EL表达式的基本概念,然后引入cacheable EL表达式,并解释其背后的原理和工作方式。

第三部分将探讨cacheable el表达式在实际应用中所具备的优势和局限性。

接着,在第四部分中,我们将分享一些编写和使用cacheable el表达式时需要注意的技巧和事项。

最后,在第五部分中,我们将总结cacheable el表达式的理论说明及其应用场景,并展望该领域未来的研究方向。

1.3 目的通过本文对cacheable el表达式进行理论说明,旨在帮助读者深入了解和掌握这一概念,并能够灵活运用于实际项目中。

我们希望读者能够从本文中获得关于cacheable el表达式的扎实理论基础,并能够在开发中充分利用其优势,提升程序性能和开发效率。

此外,我们也希望通过本文的介绍,引起更多研究者对cacheable el表达式领域的关注,并促进该领域的进一步发展。

2. cacheable el表达式的定义和原理2.1 EL表达式简介EL表达式(Expression Language)是一种特定的语言,用于在Java EE应用程序中访问和操作对象的属性。

它是一种轻量级、简洁、易于使用的表达式语言,通常用于JSP页面中。

2.2 cacheable EL表达式的概念cacheable EL表达式是指在EL表达式中添加了缓存机制,以提高性能和减少资源消耗。

前端开发中的本地存储与缓存管理

前端开发中的本地存储与缓存管理

前端开发中的本地存储与缓存管理在当今互联网发展快速的时代,前端开发变得越发重要。

作为前端开发人员,我们常常需要处理大量的数据,而这些数据往往需要在客户端进行存储和管理。

为了提高用户的访问速度和体验,本地存储与缓存管理成为了前端开发中一个必不可少的环节。

一、本地存储的意义和方式本地存储指的是将数据存储在用户的设备上,以便于用户访问和使用。

与传统的服务器存储相比,本地存储有很多的优势。

首先,它能够减轻服务器的压力,提高网站的性能和响应速度。

其次,本地存储可以在用户离线时让用户依然能够访问和使用数据。

最后,本地存储可以减少网络传输的数据量,提高用户的访问速度。

在前端开发中,我们常用的本地存储方式有cookie、localStorage和sessionStorage。

cookie是一种在浏览器中存储信息的简单方式,但它的存储容量较小,只能存储字符串类型的数据。

localStorage和sessionStorage则提供了更为灵活和强大的存储方式。

localStorage可以无限期地存储数据,而sessionStorage只在当前会话中有效。

它们都能够存储JSON对象,并且提供了读取和删除数据的方法。

二、缓存管理的优化策略在前端开发中,缓存是一种常见的性能优化策略。

通过将一些经常使用的资源存储在缓存中,可以减少网络请求的次数,提高网站的速度和性能。

缓存管理的主要目标是减少资源的加载时间和带宽消耗。

常见的缓存管理策略有强缓存和协商缓存。

强缓存通过设置Expires或Cache-Control响应头来告诉浏览器在一段时间内直接使用缓存,而不再进行请求。

协商缓存则通过设置Last-Modified和Etag响应头来告诉浏览器是否需要重新发送请求。

浏览器在下次请求资源时会发送If-Modified-Since或If-None-Match头来验证资源是否发生了变化。

除了使用缓存管理策略外,还可以使用一些其他的优化技术。

软件需求方案

软件需求方案
3.提升企业核心竞争力,助力企业持续发展。
本方案旨在为项目提供全面、详细的需求分析和实施规划,以确保项目顺利推进。在实际执行过程中,需根据实际情况调整和优化方案,确保项目成功实施。
4.缓存:使用Redis等缓存技术,提高系统性能。
5.消息队列:使用RabbitMQ、Kafka等消息队列,实现系统间的异步通信。
五、开发与测试
1.采用敏捷开发模式,分阶段完成系统开发。
2.严格执行代码审查,确保代码质量。
3.进行系统测试,包括单元测试、集成测试、性能测试、安全测试等。
4.根据测试结果,及时调整优化系统功能与性能。
3.开展集成测试、性能测试、安全测试等,全面评估系统质量。
4.根据测试反馈,调整优化系统功能与性能。
六、项目实施策略
1.项目筹备:明确项目目标、范围和进度计划,组建专业团队。
2.需求调研:深入了解企业业务需求,编制详细需求说明书。
3.系统设计:完成系统架构、模块划分、界面设计等。
4.系统开发:按照开发计划,分阶段完成系统开发。
-代码规范,易于维护
-提供详细的系统文档与API文档
四、系统架构
本项目采用前后端分离的系统架构,具体如下:
1.前端:使用Vue.js、React等前端框架,实现用户界面与交互。
2.后端:采用Spring Boot、Django等后端框架,负责数据处理与业务逻辑。
3.数据库:使用MySQL、PostgreSQL等关系型数据库,存储用户数据。
三、需求分析
1.功能需求
(1)核心功能
-用户管理与权限控制
-业务流程处理
-数据录入与查询
-报表统计与分析
(2)辅助功能
-系统设置与个性化定制

使用Docker容器部署和管理Memcached缓存

使用Docker容器部署和管理Memcached缓存

使用Docker容器部署和管理Memcached缓存随着互联网的快速发展,大量的数据处理和存储需求逐渐涌现。

为了提高应用程序的性能和响应速度,缓存成为了不可或缺的一部分。

而Memcached作为一种高性能的分布式内存对象缓存系统,被广泛应用于各类网站和应用程序中。

本文将探讨使用Docker容器来部署和管理Memcached缓存的方法和优势。

Docker是一个开源的容器化平台,可以将应用程序及其依赖打包成轻量级、可移植的容器,并进行部署和管理。

相较于传统的虚拟机技术,Docker提供了更快速、更高效的部署和资源利用方式。

对于Memcached这种高性能的缓存系统,使用Docker进行部署和管理是一个理想的解决方案。

首先,在部署Memcached缓存之前,我们需要在本地安装Docker。

安装完成后,可以通过Docker Hub来获取Memcached的Docker镜像。

Docker Hub是一个存储和分享Docker镜像的在线平台,用户可以在其中找到各种基础镜像和应用程序镜像。

在命令行中执行以下命令,即可从Docker Hub上下载Memcached镜像:```docker pull memcached```下载完成后,可以通过以下命令来创建一个Memcached容器:```docker run -d -p 11211:11211 --name my_memcached memcached```上述命令的含义是以后台模式运行一个Memcached容器,将容器内部的11211端口映射到本地的11211端口,并将容器命名为my_memcached。

接下来,我们可以使用telnet命令来测试是否成功部署了Memcached缓存:```telnet localhost 11211```如果成功连接上了Memcached服务器,则说明容器已经正确部署并且可以正常访问了。

使用Docker部署和管理Memcached缓存的好处不仅仅在于简化了部署过程,还包括了以下几个优势:1. 资源隔离:每个Docker容器都有自己独立的进程空间和文件系统,不会相互影响。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.如果是list中包含复杂对象,则将list中的对象取出,解析第一条数据,取得数据的数据类型完整类型名,再将数据转换为json格式的字符串,二者进行拼接,拼接规则为:
完整类型名_&_数据对象json字符串---数据拼接规则
如此得到具有对象完整数据以及结构的字符串,并将其存入list中,其后的数据直接转换为数据对象json字符串放入list中。
缓存管理功能需求说明
缓存管理开发背景
缓存管理功能的开发,意在减少系统对数据库的过多访问,通过减少对数据库的访问次数,改用访问内存的方式,提升系统的性能。直接从内存获取数据,较之从数据库获取数据,效率可以得到显著的提升。
系统由于多次查询数据库,消耗大量系统资源,且查询效率可能因为开发者的个人能力导致查询效率不高,或占用过多资源影响系统性能。使用缓存管理,系统只有第一次查询访问数据库,而后皆通过访问内存取得数据,不需要在计较这次查询的SQL是否过于复杂,是否效率低下,直接取得数据返回即可。
Redis缓存管理单表形式管理
Redis缓存管理提供了单表形式的缓存管理方案,该方式可以直接缓存整张表的数据,并对这张表的数据进行相应的缓存管理。该形式同样适用于本地缓存,即本地缓存及redis缓存在此形式的方案是一致的。
缓存的单表形式缓存管理,旨在简化对于单表数据缓存操作的管理,方便开发者通过该形式方案简单的操纵单表数据以完整开发的缓存需要。
Redis缓存管理的数据会有简易的持久化。即当redis停止后或者系统停止后,再次启动时redis依然存有数据提供,不需要再次载入缓存。如果缓存设置了失效则可能会被清除。
R
由于redis数据类型的特殊性,所以所有Java中复杂的对象存储都需要进行相应的转换后才可以进行保存。对于redis缓存管理中缓存的修改,采用删除原有数据再行保存新数据的更新方式,并非采用覆盖数据的方式。
1、list当方法的返回类型为list时,将取得的方法返回值进行解析,取得list中的每一条数据,并将数据转换成json格式的字符串加以存储,为了能正常回转,在第一条数据中会将list的泛型完整类名进行标记,所以方法的第一条数据格式为:类型 +_&_ +数据json字符串。
完整类名 +英文句号 +方法名 +value值 +下划线 +入参的MD5加密码
Value的缓存存储为非定类型存储,即直接对返回结果进行保存,不做任何干预处理,仅凭保存方法的逻辑进行处理,同时,使用value的缓存将不再进行任何管理,即系统不再干预,直到开发者自行调用方法销毁或缓存自行销毁,直至之前都不会有任何的变化。
4.如果是map类型,将map拆分hash结构保存。如果map的value类型为复杂类型,缓存管理将不会对对象进行解析,直接保存,因此可能导致数据丢失。如果类型为复杂类型需要又开发者自行转换string格式进行保存。
5.如果是其他复杂类型,缓存管理不进行解析管理,统一使用object的toString进行string转换保存。因此,其他复杂类型不建议使用缓存,如果一定有必要,需要开发者自行定制保存解析规则,进行string格式的保存。
增删改有效:
1、clear该项表明当前方法的操作会影响到哪些name标识的缓存查询,需要将这些缓存进行清除。该项值为一个字符串,将多个name以英文逗号隔开。
2、oprTable该项表明当前方法的操作会影响到哪些表数据,需要对这些表数据进行更新。该项值为一个class数组,class为需要更新表对应的实体类。
所有有效、增删改必要:
1、operation该项用于注明当前方法的操作是属于增删查改中哪一类型的操作,该项默认为查询操作,增删改操作需另行注明。CacheConstants类中有常量属性标识。
通过缓存注解标识判断当前缓存操作的操作类型,操作需要等进行相应的缓存管理操作。
V
存入逻辑:
Value加入缓存的key生成规则为
R
因为redis数据结构的特殊性,本缓存管理主要采用list、hash、value三种方式对数据进行获取。
List对应Java的list-string类型;hash对应Java的map类型,且value为string类型;value对应Java的string类型。
上一部分已经说明了在redis缓存管理中的数据保存形式,由缓存管理定制了数据解析规则,因而获取缓存数据后转换Java支持的对象则需要使用到解析规则,在此获取数据提供如下解决方案:
查询有效:
1、value(该项基本不建议使用);
2、initData具备该项则说明该方法是基于单表的查询,缓存查询是通过表映射关系取得缓存数据、且如果表数据没有缓存会进行缓存整个表数据;
3、name具备该标识的方法一般为多表查询或其他特殊查询,缓存中保存该方法的返回数据采用完整保存的方式进行保存,不会对数据进行拆分。即一个具备name的查询对应一个结果存于缓存中。
1.如果需要取得的数据是list形式的,在解析规则下具有两种情况:其一,从缓存中取出的list数据为符合数据拼接规则的字符串,对于此类型解析完整类型名,得到类型的Class,同时又有数据的json格式字符串,将json字符串转换为对应的形式,构造新list,返回构造好的数据;其二,从缓存中取出的list为特殊标识ID字符串,取得特殊标识ID,根据这特殊的字符串从缓存中取得hash结构的数据,解析特殊标识ID,得到数据的类型,将hash结构的数据转换为数据原有类型,构造新list返回。
2.如果需要取得的数据是page类型,从缓存中获取page对应的hash结构数据,将hash结构的数据转换为page对象,得到page中的result,将result如上list般处理后,置入page对象中,返回page对象。
3.如果需要取得的数据是JavaB来自an对象类型,缓存管理提供两种方案获取:其一,判断获取的key,如果符合特殊标识ID的形式,通过特殊标识ID从缓存中取得hash结构的对象数据,根据特殊标识ID解析得到数据的类型,将取得的hash结构数据转换为对应类型的JavaBean对象,返回对象;其二,如果标识不符合特殊标识ID形式则获取hash结构数据,将hash结构数据根据传入的对象类型转换成相应的JavaBean对象,返回对象。开发者如果有特殊需要可以自行定义规则进行对象存取。
通过getTableData方法,可以获取该表在缓存中的数据,如果缓存中不存在该表数据则将该表数据置入缓存,并返回数据。由于使用了该方式会将表数据写入缓存中,所以需要考虑表数据的数据量,如果表数据的数据量过大,则不建议使用该方式进行缓存,否则过多的数据进入缓存对系统会造成不必要的负担。
对于单表形式的缓存管理,CacheUtils类中提供了对表数据的增删查改方法,且表数据具有如下数据结构:
对于list中的泛型,如果为string类型则可以直接保存进入缓存中,如果list中的泛型为JavaBean对象或者其他复杂类型则需要将数据转换为string类型后再行保存。对于这类复杂对象转换为string的处理方法为将之转换为json格式的字符串用以保存,通过将原本的数据类型的完整类型名获取保存于json字符串之前,这样在对于数据的回转的时候就能避免类型的丢失导致无法正确转换为原有类型。对于此类数据采用了如下的解决方案:
取回逻辑:
同理,因为使用value为非定类型存储,不做任何控制,取回时直接由缓存中取出并直接返回,同样不进行任何处理。
N
存入逻辑:
Name加入缓存的key生成规则为:
Name标识的值 +_data_ +入参的MD5加密码
Name的存储涵盖了以下几种类型(使用了redis以下才有效,非redis直接保存即可):
2.如果是page对象的result中包含了复杂对象,则将page中的result取出,因为page中的result类型为list类型,因此将result以如上list的转换方式转换,再将得到的转换后的list放回page中,最后将page对象拆分为hash结构进行保存。
3.如果是JavaBean对象,提供两种解决方案,其一,直接保存JavaBean对象,将JavaBean对象进行hash拆分,存入缓存。其二,如上拼接规则将数据拼接得到string,直接保存string字符串,而后取回时再行解析。第一种方案由缓存管理提供,第二种方案由开发者自行控制,缓存管理不提供具体解析过程,仅提供保存string的方法以及获取string的方法。
由于存什么取得的就是什么,因而直接修改取得的数据对象有可能导致缓存数据也被修改。
R
Redis缓存管理需要开启redis服务器并正确配置连接信息,系统会在启动的时候检测redis是否可以正常连接启用,如果没有正常连接启用则使用本地缓存管理。
Redis缓存管理对于类型具有特别的要求,对于不同的数据类型需要使用对应的类型进行保存。且不允许使用复杂的对象类型进行保存,如list-object是不被允许的,需要转换为list-string的类型再进行保存,同理Map类型也不被允许使用Object,但是单个JavaBean是允许进行存取的。即redis缓存管理不支持三维结构存储,仅支持二维结构存储。
关于开发者需要自行开发某功能的缓存管理需要了解CacheUtils怎么使用可以查看《缓存管理开发说明》
本地缓存管理
本地缓存管理是在redis没有正常启动运行的时候系统提供的缓存管理方式。本地缓存管理暂无任何持久化操作。对于缓存中的所有数据,在应用重启后一律清空,需要重新载入缓存。本地缓存管理采用的是标准的key-value形式保存,于Java中采用的结构形式为HashMap结构,HashMap有利于快速的存取,因而采用该结构保存本地缓存。其中key的类型为string,value的类型为object。本地缓存管理对于类型的限制基本没有。Value可以置入任何Java支持的对象。
4.如果需要取得的数据是map类型,则直接根据key值取得对应的hash结构数据,转换map返回。如果存储是数据出错,得到的缓存数据也会出错,开发者需要覆盖上正确的数据或者移除该缓存,节省缓存空间。
相关文档
最新文档