码迷,mamicode.com
首页 > 数据库 > 详细

Oracle Coherence中文教程十五:序列化分页缓存

时间:2015-02-09 14:16:32      阅读:313      评论:0      收藏:0      [点我收藏+]

标签:coherence   集群   

序列化分页缓存

本章提供了大量的二进制数据的离堆缓存信息。

本章包含以下各节:
    了解序列化分页缓存
    分页缓存配置序列化
    优化分区的高速缓存服务
    配置高可用性
    配置负载平衡和故障转移
    支持巨大的缓存

15.1了解序列化分页缓存

Coherence提供高效巨额自动过期数据使用潜在的高延迟的存储机制,如磁盘文件缓存的明确支持。其优点包括支持更大的数据集可以管理在内存中,同时保留出了管理时序的一个有效的终止机制(和自动释放的资源管理有关的) ,该数据。最佳使用场景包括许多大型对象存储能力,很少访问XML文档或内容,或容忍一个更高的延迟,如果缓存的数据已经被分页到磁盘的访问。请参见第13实现存储和备份地图。 

序列化分页缓存定义如下:

    序列化意味着,存储在缓存中的对象被序列化和存储在二进制商店;参照现有的序列化地图功能和序列缓存。

    分页意味着存储在缓存中的对象是分段管理效率。

    高速缓存意味着可以有指定高速缓存的大小的限制,在这种情况下,限制为并发的网页的缓存管理到期前页的最大数目,从最旧的页开始。

结果是一个特点,组织数据在缓存中的数据被放置在缓存中,然后就可以有效地从高速缓存中的数据,整个页面在一个时间到期时间的基础上,通常,无需重新加载任何数据从磁盘。

15.2配置序列化分页缓存

序列化的主配置分页缓存是由两个参数:高速缓存管理的页面,一个页面是有效的时间长度的数字。例如,一天的缓存中的数据,高速缓存可以被配置为每个一小时的24页,或96页,每次15分钟,依此类推。

每一页缓存中的数据是由一个单独的二进制存储管理。缓存需要二进制存储管理器,它提供的手段来创建和销毁这些二进制商店。 Coherence提供二元店经理对所有的内置的二进制商店实现,包括伯克利DB (简称“BDB ” )和各种NIO实现。

序列化分页缓存配置缓存中的配置文件内<external-scheme><paged-external-scheme>的元素。参见外部计划分页外部计划” 

15.3优化分区的高速缓存服务

Coherence提供一个优化的分区的高速缓存服务,因为 当它是用来备份分区的高速缓存在任何序列化地图和缓存中存储的数据是完全的二进制形式。这就是所谓的二元地图优化,并启用时,它给人的序列化地图,序列化缓存,并假定被保存在缓存中的所有数据是二进制序列化分页缓存权限。这种优化的结果是较低的CPU和内存利用率,性能也略高。见<external-scheme><paged-external-scheme>缓存配置元素

15.4配置高可用性

还提供了明确的支持,在序列化分页缓存分区的高速缓存服务的高可用性功能,通过提供一种可用于主存储的数据和用于备份的存储的数据进行了优化的配置的配置。在备份存储的配置是已知的作为被动模式,因为它不积极届满从其存储的数据,而是反映发生在一级高速缓存存储期满。当使用高可用性数据分区的高速缓存服务功能(备份数1或大于,默认值是) ,并采用分页缓存序列化作为主要的备份存储服务,这是一个最好的做法还可以使用序列化分页Cache作为备份存储,并配置备份与被动的选择。请参见的缓存配置<paged-external-scheme>元素。

15.5配置负载平衡和故障转移

当使用分布式缓存服务,特别应考虑负载平衡和容错的目的。分区计数参数的分布式缓存服务应设置高于正常人,如果缓存中的数据量是非常大的。高分区数打破了整体的缓存,负载平衡和恢复处理因故障转移成小块。例如,如果缓存有望成为一个terabyte ,两万分区打破了缓存为单位平均约50MB 。如果一个单位(分区大小)是太大,它会导致缓存负载平衡??时的内存条件。 (请记住,以确保分割数是素数;http://primes.utm.edu/lists/small/素数的列表,您可以使用)

15.6支持巨大的缓存

为了支持庞大的缓存过期数据(例如,terabytes兆兆字节) ,到期处理守护线程同时进行没有缓存处理中断。其结果是,许多数以千计或数以百万计的对象可以存在于一个单一的缓存页面,他们可以异步过期,从而避免任何服务中断。守护线程是一个选项,默认情况下是启用的,但它可以被禁用。见<external-scheme><paged-external-scheme>缓存配置元素。

当缓存被用于大量的数据,这些页面是典型的磁盘备份。由于缓存最终过期的每一页,从而释放磁盘资源,默认情况下,缓存将使用虚拟擦除优化。明确从缓存中删除或过期的数据实际上没有从底层二进制存储中删除,但是当一个页面(二进制存储)完全清空,其全部擦除。这减少了I / O的幅度相当,特别是在期间届满的处理和操作,如负载均衡,集群内引入大量数据。这种优化的成本的磁盘文件(如一个基于磁盘的二进制存储选项时) ,往往是大于它们管理的数据,否则意味着,由于磁盘空间被认为是比较廉价的其他因素,例如响应时间,虚拟擦除优化默认启用,但可以禁用它。假设一个级别的,注意的磁盘空间通常是本地分配给每个服务器,从而TB级的缓存分区超过百台服务器将只使用每台服务器的磁盘空间( 10GB的主存储和备份存储10GB , 20GB左右备份。 )

Oracle Coherence中文教程十五:序列化分页缓存

标签:coherence   集群   

原文地址:http://blog.csdn.net/huwenfeng_2011/article/details/43669205

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!