【问题标题】:How to persist session when server restart?服务器重启时如何保持会话?
【发布时间】:2020-06-19 07:55:28
【问题描述】:

我正在尝试实现 tomcat 嵌入式 Web 服务器。一切运作良好。但是当我重新启动时会话被清除。

我正在尝试实施正确的会话持久性配置。但没有成功。这是我当前的代码 sn-p。它有什么问题?

        ...
        var store = new FileStore();
        store.setDirectory("/tmp/tomcat.embedded.session.store.demo");

        var manager = new PersistentManager();
        manager.setStore(store);
        manager.setSaveOnRestart(true);

        var context = tomcat.addWebapp("", docBase);
        context.setReloadable(false);
        context.setSessionTimeout(60);
        context.setManager(manager);
        ...

编辑:

我发现 StandardManager 可以将会话存储到文件调用方法StandardManager.unload()。但是StandardManager.load() 对会话没有影响。

我领先一步,但仍然没有成功。

【问题讨论】:

    标签: tomcat tomcat9 embedded-tomcat


    【解决方案1】:

    将会话存储在db或redis中(redis不应该在同一台服务器上)

    【讨论】:

    • 是的,这是未来的计划。但是现在我需要替换 ubuntu 的 apt-get 包管理器安装的 tomcat9 包。
    猜你喜欢
    • 2016-01-08
    • 2021-12-07
    • 2014-06-09
    • 1970-01-01
    • 2015-09-06
    • 2020-01-27
    • 1970-01-01
    • 2011-07-14
    • 1970-01-01
    相关资源
    最近更新 更多