您的位置:首页 > 运维架构 > Tomcat

Tomcat的session.ser带来的问题

2013-10-07 15:09 567 查看
Tomcat中的Session Persistence功能默认是开启的,就是tomcat重启的时候也能保持重启前的session状态。

工作原理:

1, tomcat停止的时候在 /tomcat-6.0.26/work/Catalina/localhost/_/下面生成session.ser文件。文件里面保存了session信息。

2,tomcat启动的时候,从session.ser中读取信息,然后删除session.ser文件。

由于默认是开启这个功能的,不出意外的话一般是不会去关注他的。

但最近一个服务器在备份文件的时候,发生了磁盘空间不足的错误。

用munin监视工具查看,果然在一个短暂的时候内100%用完。查看系统文件,log啥的没有发现临时大数据文件。

没办法在文件备份的报错的时候用 du命令把文件的大小都写入log里面。这样终于找到了问题所在。

正是这个session.ser造成的,没想到这个文件异常的大。

解决办法1:关闭这个功能

As documented above, every web application by default has standard manager implementation configured,

and it performs session persistence across restarts. To disable this persistence feature,

create a Context configuration file for your web application and add the following element there:

<Manager pathname="" />

参考:点击打开链接

解决办法2:没啥说的,增加足够大的磁盘容量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: