Oracle Coherence中文教程一:入门

入门

本章提供一般连贯性的概念和功能的快速概览。它概括产品的功能,使用的可能性,怎么会去实现特定的功能,并提供一个简要概述。在本章中讨论的项目在本指南详述。

1.1基本概念

本节中的主题介绍了基本概念,都与coherence,并讨论了使用群集数据的连贯性,相关的几个重要特征。

集群数据管理

在一致性的核心是集群数据管理的概念。这意味着以下目标:一个完全一致的,单一系统映像(SSI)可扩展性进行读取和写入访问快速,透明的故障切换和故障恢复线性可扩展性的存储和处理无单点故障(SPOFS)群集范围锁定和交易建立在此基础之上

一个单一的逻辑层的Coherence

缓存策略Coherence提供多个缓存实现:本地缓存本地缓存堆非集群的缓存。复制缓存非常小,读重缓存。

分布式缓存读取和写入访问真正的线性可扩展性。数据是自动,动态和透明的跨节点分区。分配算法最大限度地减少网络流量,并避免通过逐步转移数据服务将暂停。近缓存提供本地高速缓存的性能与可扩展性的分布式缓存。几个不同的近缓存策略,并提供一个折衷性能和同步担保之间。在过程高速缓存提供了最高水平的原始性能,因为对象是本地JVM内部管理。这样做的好处是最直接实现本地复制,乐观和近缓存实现。进程(客户端分层缓存(使用近缓存功能),使您能够夫妇较大,分区的缓存服务器上缓存在应用服务器上的本地缓存,结合本地缓存分区缓存的可扩展性的原始性能。这是非常有用的两个专用缓存服务器和缓存(高速缓存分区存储在应用程序服务器的JVM)合署办公。见第三部分

数据存储选项虽然大多数客户使用堆存储加上专用的高速缓存服务器,Coherence数据存储有几个选项:On-heap—NIORAM—NIONIODisk—File-based—基于文件的,采用了特殊的优化磁盘的存储系统,以优化速度和减少I/O连贯性存储是短暂的:基于磁盘的存储选项只用于管理高速缓存的数据。连贯性持久性存储,再加上一个缓存加载/缓存存储提供支持地图。请参见第

序列化选项由于序列化集群数据管理往往是最昂贵的部分,com.tangosol.io.pof.PofSerializer-java.io.Serializablejava.io.Externalizable-com.tangosol.io.ExternalizableLite-com.tangosol.run.xml.XmlBean-

可配置和可扩展性连贯性的连贯性被设计为允许根据需要更换模块。例如,本地的

命名空间层次连贯性组织一套服务。在根群集服务。集群被定义为一组连贯实例(每个在群集服务的各种服务,包括相干API。这些措施包括不同的缓存服务(复制,分发等)和调用服务(代理部署到各个节点集群)。每个服务实例的命名,是一个典型的默认服务为每种类型的实例。缓存服务包含名为的缓存(com.tangosol.net.NamedCache),这是类似于数据库表是,它们通常包含了一组相关的对象。群集服务,以及基于其他群集提供服务的连贯性的更多信息,请参阅第

1.2读写缓存

本节提供了一个概述的

1.2.1NamedCache下面的源代码返回一个引用一个

importcom.tangosol.net.*;

NamedCachecache=CacheFactory.getCache("MyCache");

连贯性扫描的缓存配置默认情况下,

com.tangosol.net.NamedCache接口扩展其他几个接口:

Thecom.tangosol.net.NamedCacheinterfaceextendsseveralotherinterfaces:

java.util.Map—basicMapmethodssuchasget(),put(),remove().

com.tangosol.util.ObservableMap—methodsforlisteningtocacheevents.(SeeChapter21,"UsingCacheEvents".

com.tangosol.net.cache.CacheMap方法,获得在缓存中的keys(asaMap)的集合,把缓 存中的对象。还支持添加届满值时,高速缓存中的条目。com.tangosol.util.QueryMap者指南)com.tangosol.util.ConcurrentMap并发访问,如lock()andunlock().com.tangosol.util.InvocableMap服务器端缓存中的数据处理方法。

1.2.2缓存对象的要求的缓存键和值必须是可序列化的(例如,,

1.2.3NamedCache的使用模式一般有两种方法使用NamedCache:作为一个集群执行的作为一种手段去耦访问外部数据源(通常情况下,内联高速缓存用于缓存数据:adatabase—aservice—服务的主机,网络服务,服务局的任何服务,代表一种昂贵的资源的访问(无论是由于成本或实际上网费用计算)。calculations—计算,金融计算,聚合,数据转换。使用内嵌缓存,使得它很容易,以避免重复计算。如果计算完成后,结果只是被从缓存中取出。由于任何可序列化的对象可以被用来作为一个缓存键,它是一件简单的事,使用对象,其中包含计算参数作为缓存键。参见第回写式选项:写通过确保外部数据源总是包含最新信息。二手数据时必须立即保留,或与其他应用程序共享数据源时。后写提供更好的性能缓存写入到外部数据源。不仅可以写入缓冲,甚至在数据源上的负载,但是可以结合多个写入的,进一步降低了I/O。权衡的是,数据是不是立刻保存到磁盘,但是,它立即分布在整个集群中,这样的数据服务器生存的损失。此外,如果整个数据集的缓存,这个选项意味着应用程序可以暂时度过一个完整的数据源失败既是缓存读取和写入不需要同步访问数据源。要实现一个只读的内嵌的缓存,你只需实现两个方法上如果你想实现读publicvoiderase(ObjectoKey);

publicvoideraseAll(CollectioncolKeys);

publicvoidstore(ObjectoKey,ObjectoValue);

publicvoidstoreAll(MapmapEntries);从外部数据源的方法的

离开你的那一天开始,左心房渐渐停止跳动…

Oracle Coherence中文教程一:入门

相关文章:

你感兴趣的文章:

标签云: