1 / 6
文档名称:

缓存框架所要解决的基本问题.docx

格式:docx   大小:39KB   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

缓存框架所要解决的基本问题.docx

上传人:cjl201702 2022/1/19 文件大小:39 KB

下载得到文件列表

缓存框架所要解决的基本问题.docx

文档介绍

文档介绍:请下载支持!
请下载支持!
赚肆蝇誉筮前藏Cache框架,顾名思义即数据的暂存场所和管理。那么该系统的两个核心功能就开始上演了,即存放数据的一个容器和管理缓存容器。就像数据库服务
器软件一样,他有一个和新的数据存放场所,同时还一来,既
不失缓存的最初设想,加入这部分数据一下子全部取出那么在处理时既会带来相
应异常的产生,同时也是眉毛胡子一把抓,就没有区分度。如果设置实体缓存的
大小,我们强烈建议数据库健表示给出一个计数,即该行数据被选中的次数。那么每当系统启动时就可以有区分度的将这部分数据进行事先的提取。如果数据库
建表时没有添加该字段信心,那么缓存系统应该设计自学****算法。该自学****算法
需要完成以下基本的任务:
期誉筮前藏腿蚁I、java实例,即刚刚
从数据库中提取出来的实例。系统对这些实例进行了一次升级,我们称之为
对象的升级。该升级需要完成以下几部分内容,给每一个对象添加一个命中
的计数,同时添加在同一阶段在命中次数相同的情况每次命中的时间间隔,
以备当内外存置换时当命中的次数相同时来更好的体现该缓存实体在时间
局部性上更占有优势。
藏袂薄踊蚀赚肆n、HashMap?HashSet?Or
TreeSet或者其他的数据结构。要使用何种数据结构必须对每种数据结构的特
性要了解的相当清楚才能更好熟练的加以运用。这里简单的介绍一下常用集
中集合的特点:
萧童芍曹蚂肄肇ArrayList:内部的实现方式是基于数组的,无容量的限制。但是有
个默认的初始容量。因此在插入元素时可能要扩展此时可能会降低系统的性
能,但在删除元素时并不会减少数组的容量,但系统也提供了一个***可以
让程序员来维护该容量的大小,即trimTosize方法。当内存紧缺时可以使用
该方法来优化内存的使用效率。当要从中查找某个特定的元素时或者判断该
集合中是否包含某个特定的元素时底层的实现是通过equals方法来实现的。
因此当系统打算用ArrayList集合来存储一个java实例时,可考虑是否要重
写父类的equals方法;若要向集合中进行数据的插入或者移除,将会是比较
耗时的,但是基于角标的查找其事件复杂度为O(1);并且有时非线程安全的。
节期勘膈螃薇薄LinkedList:基于双向链表机制的实现,元素的插入和移动较快,当
是查找的事件复杂度为O(n),当查找某个特定的元素时也是基于equals方
法来实现,同时该集合的内部操作也都是非线程安全的,这就需要我们程序
员自己来维护多线层访问的安全性。
藤蔓蔗噩肇曾亵鉴于OScache的实现,他的实现是每一个缓存实体都对应了一个缓
存文件,。而该缓存的文件名是基于一种不冲突的
请下载支持!
请下载支持!
算法来实现。文件准备好了,那么当系统要缓存一个实体到本地文件中时,首先
通过该缓存的key得到缓存的文件,然后使用ObjectOutputStreamSE的writeObject
请下载支持!
方法来将一个实体写入到磁盘。这里使用装饰设计模式通过BufferedOutputStream流来包装一个FileOutputStream来提高文件的读写操作,实现文件和流的关联方式如以下java代码所示:
放神勤芍芾聿