gpt4 book ai didi

session - 管理不同 tomcat 实例上的 session

转载 作者:行者123 更新时间:2023-11-28 22:46:06 24 4
gpt4 key购买 nike

您好,我遇到的情况是我在我们的服务器上使用 4 个 tomcat 实例。当用户登录时,假设它连接到 tomcat-1,因此我们将所有 session 值存储在 tomcat-1 中。然后我们正在处理 paypal。在 paypal 之后处理用户被转移到另一个 tomcat,比如 tomcat-2。因此该用户的 session 中没有值。我面临问题。所以我想在 paypal 处理后将用户发送到同一个 tomcat 上,以便他的所有我们可以获取的 session 值。

最佳答案

为什么要在服务器中使用多个 Tomcat 实例?对此的最佳答案是使用单个 Tomcat 实例并在其上部署所有 Web 应用程序,如有必要,请使用 virtual hosting .

如果您坚持使用多个实例,那么唯一的解决方案是将感兴趣的信息作为请求参数或路径信息传递并进行相应处理。如果此信息是大量数据和/或复杂的,则将其存储在共享数据存储(SQL 数据库?)中并将其标识符(主键)值作为请求参数/路径信息传递。

如果您通过在服务器中使用单个 Tomcat 实例来解决此问题,那么您只需设置 emptySessionPath HTTP connector 的属性<Connector>conf/server.xmltrue .这样HttpSession将在所有已部署的网络应用程序之间共享。

如果您实际上有 4 台物理上独立的服务器机器,每台 Tomcat 实例都包含 Web 应用程序的备份/副本,那么您需要创建一个 cluster with session replication .

关于session - 管理不同 tomcat 实例上的 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3080199/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com