1

我在 tomcat 5.5 上运行一个 Web 应用程序。

如何强制将会话转储到磁盘中

  1. 在每个请求
  2. 在每个时间间隔
4

2 回答 2

0

问题 1 可以使用过滤器或阀门来完成:

    public void doFilter(ServletRequest request, ServletResponse response,
                FilterChain chain) throws java.io.IOException, ServletException {
            HttpServletRequest req = (HttpServletRequest) request;
            HttpServletResponse res = (HttpServletResponse) response;
            HttpSession session = req.getSession(false);
            if(session != null) {
            dumpSession( session );
            }
            chain.doFilter(request, response);
        }
}

对于问题 2,请参阅此讨论

于 2010-05-26T07:34:42.070 回答
0

查看 Persistent Manager http://tomcat.apache.org/tomcat-5.5-doc/config/manager.html 将 maxIdleBackup 和 maxIdleSwap 设置为 0 或接近零的时间将在每个请求上保持会话。将这些参数设置为更大的值将使您间隔转储。

于 2010-05-26T19:44:44.007 回答