java - tomcat 应用程序服务器中的内存缓存?

标签 java tomcat caching

我实现了一个由一堆 AVL tres 和一些 RoaringBitmaps 组成的缓存。此缓存存储在应用程序启动时从数据库读取的数据,此后不联系数据库,所有请求均由上述缓存提供。这些 AVL 树和位图是实例化一次的 Java 对象,比如使用单例模式。我注意到从缓存中获取数据的速度很慢,如果一次又一次地重复相同的查询,它会变得更快,但是每个唯一请求的第一个查询很慢。我怀疑 GC 暂停存在一些问题,而长期存在的对象存在一些其他问题。你对此有什么想法吗?

最佳答案

如果您在服务器 VM 上运行,通常您可能会看到应用程序在使用一段时间后变得更快的效果,请参阅:Real differences between "java -server" and "java -client"?

您有 GC 暂停吗?网络上的人怎么知道?!请咨询:Java Garbage Collection Log messages

关于java - tomcat 应用程序服务器中的内存缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31641349/

相关文章:

java - 如何使用 Android 在 Firebase 实时数据库中检索经过身份验证的用户的用户数据

java.lang.NoSuchMethodError : org. apache.hadoop.tracing.TraceUtils.wrapHadoopConf 错误

java - 如何扩展 Spring Web 服务?

java - 部署在 Tomcat 7.0.52 中的每个应用程序的 web.xml 都消失了

php - css/js 上的客户端缓存

java - Spring Mongotemplate从多个集合中获取数据

tomcat - 无法开箱即用地启动 jHipster 微服务网关

c# - 如何获取 IMemoryCache 中 key 的 AbsoluteExpiration DateTimeOffset

c# - 如何判断MemoryCache类消耗了多少内存?

java - 插入 } 来完成 ClassBody