gpt4 book ai didi

session - 重新部署 Tomcat 应用程序会导致事件 session 被删除

转载 作者:行者123 更新时间:2023-11-28 22:47:01 25 4
gpt4 key购买 nike

我有一个 tomcat 应用程序,我通过将新的 my-project.war 文件放入服务器上的 /var/lib/tomcat8/webapps/ 目录来部署它(通过 scp)。

每次我这样做,新副本都会在几秒钟后上线。唯一的问题是它会丢弃所有 session 。

我能找到的所有文档都告诉我 Tomcat 应该默认恢复 session 。当我重新启动 Tomcat 服务时似乎是这种情况,但当我重新部署时却不是...

谁能告诉我这是怎么回事?我不完全理解为什么首先要以这种方式部署。

最佳答案

默认 session 管理器 - StandardManager将 session 保存在 <tomcat-home>/work/<app-name>/SESSIONS.ser 中.当您停止 tomcat 时, session 将序列化到该文件中。当您启动它时 - 它们会从中加载。

但是当您重新部署您的应用程序时,会发生两件事:

  1. Tomcat un-deploys旧应用程序并删除 <tomcat-home>/work/<app-name>/文件夹,从而删除保存的 session

  2. Tomcat 部署新应用并创建新文件夹

或者用两个词 - tomcat 在取消部署时删除保存的 session 。我想这是因为:

  • 重新部署实现为取消部署 -> 部署。 IE。 “取消部署”步骤不知道是否会部署新版本的应用程序,因此它会确保自己正确清理。

  • 从安全角度来说更好

关于session - 重新部署 Tomcat 应用程序会导致事件 session 被删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56574258/

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