我们有两个应用服务器。一个是App服务器,另一个是API服务器。两者都有不同的缓存系统。如果一个更改数据库其他人不知道.Below是我们的架构的图像,我们使用spring框架(Ehcache)进行缓存。
我们的项目中也有实体监听器。如果一个流程改变了DB,那么其他流程不会受到影响。 我们如何同步Application Server和缓存?请帮忙。
答案 0 :(得分:2)
我可以想到几种方法来做到这一点。
<强> 1。具有复制功能的集群如果您想使用Spring即Ehcache中的开箱即用缓存提供程序,那么它本质上意味着您的节点级缓存并且需要复制。请查看以下链接,以使用Terracotta配置ehcache集群 http://ehcache.org/documentation/2.6/configuration/distributed-cache-configuration
<强> 2。集中式缓存服务器我个人的选择是集中式缓存,如果需要,它可以提供开箱即用的支持,可以使用自己的集群进行水平扩展。这将涉及从节点级别删除缓存,而是将其集中在缓存服务器上。基本上,您的缓存服务器位于您的数据库和应用程序节点之间。你可以看看Memcached,Aerospike和Redis。