Java:使用并发hashmap或memcached缓存

时间:2015-01-12 20:24:26

标签: java hashmap memcached concurrenthashmap

我有一个简单的国家/地区状态hashmap,这是一个简单的静态最终不可修改的并发hashmap。 现在我们在应用程序中实现了memcached缓存。 我的问题是,从缓存而不是这么简单的地图获取值是否有益? 如果我将此地图移动到缓存,我将获得或不会获得什么好处?

2 个答案:

答案 0 :(得分:1)

这实际上取决于数据的大小以及为JVM分配的内存量。

对于简单的数据,例如一个国家的状态,在几百个条目内,一个简单的HashMap就足够了,使用memcache是一种矫枉过正,实际上更慢。

如果大量数据增长(通常为10s / 100s MB或更大)且需要频繁访问,memcache(或任何其他持久缓存)将优于内存存储。

答案 1 :(得分:1)

它将作为HashMap快得多,因为它存储在内存中,并且可以通过jvm通过它的引用来完成查找。从memcache中查找将需要额外的工作来让处理器查找地图。