2017-08-25 261 views
1

当前正以独立哈哈模式设置keycloak群集,以便能够在docker群上运行。在keycloak中,用户会话缓存在嵌入式infinispan存储中,infinispan可以配置为跨集群的分布式缓存。Keycloak - Infinispan Redis缓存存储

我也设置所有者为2,但问题是......在缩小期间,用户会话可能会丢失,如果包含缓存的所有者在缩放期间被杀死-下。

我也读了关于Infinispan Redis缓存存储,但我不知道如何配置这个。

问题1: 是否可以将Keycloak Infinispan配置为使用Redis Store?

问题2: 如果这是不可能的,有没有办法可以解决这个问题?

任何建议将有所帮助。

+0

您可以配置您的缩小规模政策,一次只终止一台服务器吗? Infinispan应该检测到缺少的服务器,并重新平衡通过其余节点在该服务器上缓存的会话。 –

回答

0

在Infinispan后面使用Redis存储的任何特定原因?

更简单的解决方案可能是将持久性配置为文件或共享数据库。对于像这样的缓存用例,基于文件的持久性可能就足够了。例如,关于使用基于文件的持久性配置Infinispan的示例,请参阅here。或者,您可以存储到共享数据库,例如Postgresql,但这需要更多的设置(例如参见ref card)。