假设我按照这个答案部署新版本的应用程序而无需停机。当我将用户路由到新的应用程序服务器实例时,应用程序将不会记住他们的会话,因此他们会在没有任何警告的情况下被注销。
有没有办法让会话在多个服务器上保持活动状态或制作“会话快照”或类似的东西?
就我而言,如果这很重要的话,它是一个 Java 应用程序。
答案1
将会话数据存储在两个应用程序服务器都可以访问的单独服务器上。
答案2
将会话存储在 Memcache 中,并允许两台服务器都可以访问 memcache 后端。
您可以将它们存储在共享磁盘上,但这样速度慢且效率低。Memcache 几乎是实现此目的的正确方法。
答案3
查看服务器的集群支持情况。正确配置的集群将在两台服务器之间复制会话数据。