序列化对象
使用Oracle Coherence缓存值对象。这些对象可以代表从任何来源的数据,无论是内部的(如会话数据,暂态数据,等)或外部(如一个数据库,大型机,等等)。
放置在缓存中的对象必须是可序列化的。由于序列化集群数据管理往往是最昂贵的部分,相干数据序列化/反序列化提供了以下选项:
com.tangosol.io.pof.PofSerializer - 便携式对象格式(也可简称为POF)是一种语言无关的二进制格式。 POF的设计是令人难以置信的高效率,在空间和时间的连贯性已成为推荐的序列化选项。请参见第19章,“使用可移植对象格式”。
java.io.Serializable接口 - 简单,但最慢的选择。
java.io.Externalizable - 这就要求开发人员手动实现序列化,但可以提供显着的性能优势。了java.io.Serializable相比,这可以减少序列化数据的大小由两个或两个以上(分布式缓存特别有用的一个因素,因为他们一般高速缓存数据以序列化的形式)。最重要的是,CPU占用率大大降低。
com.tangosol.io.ExternalizableLite - 这是非常相似java.io.Externalizable的的,但提供了更好的性能和更低的内存使用情况,使用更高效的I / O流实现。
com.tangosol.run.xml.XmlBean - ExternalizableLite(有关详细信息,请参阅API的Javadoc的XMLBean)的默认实现。
注意事项:
请记住,Java序列化,序列化一个对象时,会自动抓取每一个可见的对象(使用对象的引用,包括集合,如地图和列表)。因此,缓存的对象应该不是指他们的父对象直接(握住像一个整数的标识值确定)。
自己实现序列化例程的对象不会受到影响。