作者:mobiledu2502880273 | 来源:互联网 | 2023-09-16 19:26
篇首语:本文由编程笔记#小编为大家整理,主要介绍了记录一次tomcat服务宕机优化的过程相关的知识,希望对你有一定的参考价值。
记录172.23.24.14服务宕机优化的过程:
接收到服务器宕机的短信,马上登录服务器查看
1.马上复制项目web/web-info/log下的日志文件到本地
2.复制tomcat的日志到本地
3.马上重启服务
步骤二:
1.查看项目web/web-info/log下的日志,发现报错
--java.lang.IllegalStateException: The tmpCache Cache is not alive
--removeCache$page.time.-8644669765708141109@@@@@@page.time.-8644669765708141109从缓存中删除值失败!
[ERROR] 2021-12-31 21:09:36,092 method:jos.framework.cache.impl.EhcacheImpl.remove(EhcacheImpl.java:91)
--java.lang.IllegalStateException: The localSessionCache Cache is not alive (STATUS_SHUTDOWN)
看到这里比较好奇,tmpCache哪里来的,干啥的,不着急,马上本地全局搜索tmpCache,再搜索localSessionCache,具体配置如下
嗯,发现一个比较有意思的问题,这2个对象全部由EhcacheImpl对象创建。因为本人年级比较大,见得比较多,看到EhcacheImpl就知道是用的Ehcache缓存,
而Ehcache绝大部分情况下用的jvm内存存储数据,那我就猜测可能是OOM了,马上去看tomcat日志,果然如此,再看tomcat的jvm内存配置,竟然还是默认配置,心想哪个XX配置的,马上根据服务器的实际内存情况,将最大内存调整为8*1024*0.7=5734M
ehcache地址:https://www.cnblogs.com/tongcc/p/11269339.html