Ehcache、Redis 和 Gemfire 哪个 Cache 适合哪个场景?
Posted
技术标签:
【中文标题】Ehcache、Redis 和 Gemfire 哪个 Cache 适合哪个场景?【英文标题】:Ehcache, Redis and Gemfire which Cache for which Scenario? 【发布时间】:2013-08-25 19:22:29 【问题描述】:Grails 提供了三个扩展缓存插件:
Ehcache
Redis Cache
Gemfire Cache
这些缓存有什么优缺点,在什么场景下应该使用哪个缓存?
【问题讨论】:
【参考方案1】:Redis 是共享数据结构,而 ehCache 是序列化数据对象的内存存储。 Gemfire 与 ehCache 类似,但它们试图解决多台机器之间的数据同步问题。因此,分布式环境中使用的内存数据系统。
所以这取决于。如果您的软件扩展到多台机器,那么 ehCache 不是最佳选择,因为您将不得不担心所有机器上的缓存失效(并且每台机器上的数据版本相同)。
您需要的不仅仅是缓存吗?用多种语言编写的软件会使用您的缓存吗?然后使用 Redis。 Redis 不仅仅是一个缓存,它可以被视为一个键值存储(类似于数据库),其中数据存储在 RAM 内存中的机器上,但它也可以刷新到磁盘(以保持其持久性)。
在 Redis 中您可以查询数据,可以创建出色的计数器,发送批量交易。在这里查看更多信息:http://redis.io/topics/introduction
在所有 3 种之间,当我只需要一个简单、快速的内存缓存时,我个人会选择 redis(用于大型分布式软件)和 ehCache。 这两个背后有很棒的社区,你会找到你遇到的任何问题的答案。
【讨论】:
以上是关于Ehcache、Redis 和 Gemfire 哪个 Cache 适合哪个场景?的主要内容,如果未能解决你的问题,请参考以下文章
java web开发缓存方案,ehcache和redis哪个更好