博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BigMemory系列文章--3. Ehcache存储层级(tier)
阅读量:6214 次
发布时间:2019-06-21

本文共 662 字,大约阅读时间需要 2 分钟。

转载请注明出处哈:


 

一、Ehcache存储层级示意图:

 

二、层级说明

 

1、MemStore(通常指堆内存储)

(1) 堆内存储,受制于GC

(2) 理论上最快,可以存储序列化和非序列化数据

(3) 线程安全

(4) 如果使用了OffHeapStore,那么MemStore保存The hottest subset of data from thre OffHeapStore.

 

2、OffHeapStore(堆外内存:被称为BigMemory):

有关堆外内存:可以参考如下文章:

只在企业版本的Ehcache(BigMemory)中提供,原理是利用nio的DirectByteBuffers实现,比存储到磁盘上快,而且完全不受GC的影响,可以保证响应时间的稳定性;但是direct buffer的在分配上的开销要比heap buffer大,而且要求必须以字节数组方式存储,因此对象必须在存储过程中进行序列化,读取则进行反序列化操作,它的速度大约比堆内存储慢一个数量级。

(注:direct buffer不受GC影响,但是direct buffer归属的的JAVA对象是在堆上且能够被GC回收的,一旦它被回收,JVM将释放direct buffer的堆外空间。)

(1) 堆外内存,不受制于GC

(2)  只在Bigmemory中能用,Ehcache不支持。

(3) 堆外内存使用字节码存储,所以只能存储序列化数据

 

3、DiskStore(磁盘存储):

(1) 只能存储序列化的数据。

(2) 此数据层是可选的,不是必须的

 

你可能感兴趣的文章
最佳的解决方案关于:cactiez监控linux主机时iptables阻碍了udp161端口造成无法监控解...
查看>>
linux命令:resize2fs、lvm逻辑卷lv扩展及缩减
查看>>
【数据恢复】详解ORA-8103错误
查看>>
CentOS 7 修改网卡名称
查看>>
Microsoft Office SharePoint Server 2007 Trial Version已经可以下载了
查看>>
网站前端和后台性能优化6
查看>>
MDSF:代码生成 VS 模型解释
查看>>
Lync 小技巧-38-Lync Server 2013与Exchange Server高可用环境-集成
查看>>
几个匿名内部类问题的思考
查看>>
爱因斯坦谜题:谁养鱼(C#版)续
查看>>
ORACLE 12C连接时报ORA28040和ORA01017的错误
查看>>
1分钟实现MySQL批量导出以某数字或字母开头的表
查看>>
网管成长路线建议
查看>>
XSL学习笔记3 XSLT的模板规则<xsl:value-of>和<xsl:for-each>
查看>>
通过脚本案例学习shell(三) --- 通过交互式脚本自动创建Apache虚拟主机
查看>>
C#如何实现DataGridView到DataGridView的拖拽
查看>>
网格成就Web 2.0存储时代的路易XIV?
查看>>
Android2.1以后sdk安装更新失败解决办法
查看>>
一则Sql统计的语句
查看>>
排名 sql
查看>>