繁体   English   中英

Java Web应用程序中的缓存

[英]Cache in Java web application

我在这里对Java Web应用程序中的缓存技术有疑问。

假设我实现了ehcache,缓存的数据将存储在哪里?

缓存的数据是否会在GC覆盖范围内? 我的意思是GC会删除我之前缓存的Java对象吗?

在阅读了一些缓存框架站点之后,我了解到它们在核心级别(缓存框架)正在使用hastable或hashmap,其中数据将是我们的价值,而键则取​​决于逻辑。

假设在ehcache中,maxBytesLocalHeap =“ 50m” maxBytesLocalDisk =“ 50G” 1.我在这里理解的是50Mb(maxBytesLocalHeap)将存储在堆内存中(该内存下的数据将由GC观察),2.如果maxBytesLocalDisk 50GB将存储在本地磁盘中(假定文件将作为平面文件存储在服务器的temp文件夹中),GC不会在意这些实体或对象,因为它不在堆内存中。

我的理解正确吗?

谢谢维杰

只有在其他对象没有引用的情况下,GC才会删除您的对象。 GC不知道您缓存的数据在哪里,它只是查找单独的对象。

是的,HashMap通常用于存储缓存的数据并在需要时检索它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM