缓存持久化与远程访问技术解析
1. 持久化层实现
在持久化层的操作中,有诸多关键的特性和配置需要我们了解。
1.1 storeAll 操作与队列阈值
Coherence 3.6 对 storeAll 操作有了新的变化。在之前,storeAll 的实现可能会一次性写入整个映射内容,为了避免这种情况,引入了 <write-requeue-threshold> 和 <write-max-batch-size> 两个重要配置。
- <write-requeue-threshold> :用于控制 storeAll 失败后重新入队的映射大小。对于正确实现的 storeAll(如 AbstractBatchingCacheStore 提供的实现),可将此值设置得很高,以确保所有失败的条目都能重新入队。要在 Coherence 3.6 中启用重新入队功能,需将该值设置大于 0。
- <write-max-batch-size> :默认值为 128,用于限制发送到 storeAll 的条目数量,无论写后队列中有多少条目。
若 storeAll 抛出异常,读写后备映射会将 mapEntries 中仍存在的所有条目重新入队。因此,移除已成功存储的条目可减少失败时需要重新入队的条目数量。
1.2 写后与逐出策略
为防止缓存服务器层出现 OutOfMemoryError ,通常会为后备映射配置大小限制。但在写后场景下,这会带
超级会员免费看
订阅专栏 解锁全文
167万+

被折叠的 条评论
为什么被折叠?



