在我们的项目中,我们决定在我们的应用程序中使用 Ehcache 作为 Hibernate 和查询缓存的二级缓存。它似乎运作良好。
然后突然我们意识到我们的生产环境是集群的。查看 ehcache 文档,我发现最好的办法是进行分布式缓存,但是这涉及到 Terracotta Server,在这个阶段客户端不会准备支付。
根据文档,对于独立拓扑:
如果在有多个应用程序节点运行同一应用程序的情况下使用独立缓存,则它们之间存在弱一致性。
我的两个问题是:
在“只读”模式下使用 ehcache 并继续在集群环境中独立使用它,我们会受到什么影响?因为如果只是这样说,对于它会命中其他节点的情况,它会从数据库中获取数据,因为缓存不会在那里复制/配置,我想我们会接受它。唯一的问题是,它不应该导致异常。我想知道在我的场景中使用独立拓扑的后果。
我们可以将第三种拓扑,即复制缓存作为解决方案吗?
我是 ehcache 的新手,因此有这些基本问题。非常感谢回复!
谢谢!