生产环境Tomcat启动失败

起因

今天企业微信应用一直在发警报,某个采购商不接收我们的回调数据.他们开发又没有时间处理该问题.只有对该采购商的回调回写的数据不作判断了.于是快速定位代码,加入判断逻辑语句.测试无问题,可以发布到线上了.

打开Jenkins,爽快输入账号密码,点击发布.然而,tomcat停止后再也没有起来.

疑问

一直以来,使用Jenkins发布是没有任何问题的啊;会不会有是代码有问题.于是快速回滚线上代码.然而tomcat还是起不来.

先不管那么多,先看看tomcat的日志

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c8000000, 805306368, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 805306368 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /tmp/hs_err_pid9230.log

一看,才知道内存不够,所以起不来:Cannot allocate memory;

使用 free -mh 命令一看,果然剩下可用内存: 150M.

因是生产环境的发单业务,故先把自用的Admin给停了,保证发单业务正常运行.

重启tomcat, 此时业务日志已正常输出.

总结

重启服务的时候,不能单单看业务日志,还要看tomcat的启动日志.这样才能快速定位问题所在.而在此事件中,我仅仅是看业务日志,一开始还以为是业务日志的路径定位到错的位置了.找来找去,浪费7 8分钟.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,574评论 25 709
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,170评论 6 342
  • 2017年3月,在我的黄金时代到来之前,我发现了一个百里挑一的有趣的灵魂,“那一天我二十一岁,在我一生中的黄金时代...
    4f4096b29c77阅读 4,647评论 0 0
  • 今天,听完莉塔老师对成交心法的讲解,心里对整个成交的思路做了一个清晰的解析,原来成交是有规律可循的,因为爱去做推荐...
    苹33阅读 2,994评论 0 0
  • 如果不是今天的晚餐,秦风可能还依旧是只活蹦乱跳的单身狗,而现在,他再也不能不蹦乱跳了。 ...
    已三秋阅读 2,498评论 0 2

友情链接更多精彩内容