java - 使用ehcache和spring从DB加载数据进行缓存以覆盖现有的缓存机制

标签 java spring performance caching ehcache

我正在致力于我的项目(Spring项目,我在Spring方面没有太多经验,大约7个月!)的性能改进,我们发现大部分内存都在缓存时被利用。经过一番研发,我发现Ehcache可能对我有帮助。在我的项目中,我们使用静态 HashMap 在服务器启动时从数据库加载数据,并且我们在整个应用程序中使用此映射。我确实看到了一些 Ecache 和 Spring(不是 spring boot)的示例,但我无法理解如何用现有的代码替换它,其中到处都有 HashMap?另外,如果有任何其他意见或建议,请发布..我将提供很大的帮助..! stackoverflow 上有一些关于同一问题的链接,但他们没有答案..请帮忙..!

最佳答案

如果您在 HashMap 中拥有数据,并且现在想要使用 EHCache,则一个条目的访问时间(如果该条目已位于缓存内)将比您现在的访问时间高出 10 倍以上。请参阅“命中命中的运行时比较”,地址:In Process Java Cache Benchmarks .

如果您想节省内存,访问时间会变得更长,因为您必须在请求时重新加载数据。

如果您的应用程序在 HashMap 上运行,并且在加载 HashMap 后不需要对数据库进行任何访问,那么您实际上已经拥有了为您的应用程序量身定制的完美自定义缓存。

关于java - 使用ehcache和spring从DB加载数据进行缓存以覆盖现有的缓存机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37567043/

相关文章:

java - RecyclerView添加时addInArray报错

java - 尝试运行 LWJGL "Hello World"时如何解决此 JNI 错误?

java - 如何在MYSQL数据库中存储文件列表

java - 多线程的Spring问题

matlab - 如何在 MATLAB 中更改 newfit() 的默认参数?

java - 使用 Java 声音 API 修剪 WAV 文件的开头和结尾

java - 找不到任何支持 RSA/None/OAEPWITHSHA-256ANDMGF1PADDING 的提供程序

java - 将自定义字段添加到 STOMP 消息的 header 中

performance - 广播分配慢 Julia

c++ - 为什么这个 C 代码比这个 C++ 代码快?获取文件中的最大行