测试方法:

1.狂点抽取大量数据的接口

结果:

jvm里面的现成崩溃。导致tomcat错误。

思路:

最近发现tomcat老是自动关闭,开始也发现了,不过没放在心上,直到今天,请求一提交到服务器,tomcat就死了

错误排查

tomcat自动关闭的原因很多,不一定是内存溢出,网上查到原因:
1.并发用户数目过大,也会导致tomcat自动停止服务
2.系统本身的网络负载平衡没有做好,导致tomcat自动停止服务
3.程序迭代不合理也是一个原因
4.数据库连接未关闭,导致资源损耗过重,会引起服务停止
5.程序严重错误,也会引起tomcat停止服务

没错,以上情况我都不是
接下来就是看日志了,报错看日志是常识了

1.首先看tomcat的bin目录下的logs文件夹的日志,日期排序,看当天的就行了,如果有错误信息,先解决了再说

2.看tomcat的bin目录下面,有没有hs_err_pidxxxx.log 之类的文件,如果没有,你可以不看下面的内容了,如果有,恭喜你,内存溢出了

解决方案

1.既然是内存溢出,就先看看自己服务器的配置,是不是服务器内存不够用了,尽量把没用的进程停止了

2.去tomcat的bin下面有个catalina.bat的批处理文件,用notepad++打开文件,
全文搜索

%CATALINA_OPTS%

替换成

-Xmx128m -Xms64m -Xmn32m -Xss16m

一共有四处需要替换的地方
然后启动tomcat

3.可能以上情况不行,接下来就是检查你的运行环境了,运行环境也是有影响的
cmd命令窗口输入:java -version
看看版本显示是否正常

如果不是图片中的提示,版本号无所谓,就需要看看你jdk的环境变量对不对了
简单教程环境变量配置
a.
b.
如果环境变量没问题,继续

4.以上情况都不行的话,建议更换tomcat版本
推荐tomcat7090以上
tomcat官网下载
如图下载需要的版本即可

安装tomcat,打包部署,启动tomcat

5.如果以上还是不行
a.可以在本地把项目打包出来
运行环境直接copy出来即可,路径下如图

wtpwebapps文件夹里面就是你运行的项目,不要剪切,不然你的本地代码也没了(哥就吃过这个亏,当天的代码全没了,但是我每天都会备份数据)
b.然后自己放到自己刚才下载的tomcat里面(这只是我的排错方式,当本地环境和服务器环境一样,看本地是否还报错)
如果发现本地不报错,那就是服务器的问题了
可能是你服务器配置雀实太低了,让老板加钱升级吧
推荐环境:jdk1.8,tomcat7090
ps:高版本的tomcat用jdk1.8

http://aodeng.cc:8886/archives/tomca

解决方法:

1.更换jdk版本 不要用32位的(最高支持3.7g)  用64位的。

2.初始2G,最大6G,方法区256最大,初始128。

8g内存 推荐配置参数:

windows::::::set JAVA_OPTS=-server -Xms2048m -Xmx6000m -XX:MaxNewSize=512m -XX:MaxPermSize=512m

linux  注意一定要带引号::::::::::set JAVA_OPTS="-Xms2048m -Xmx6000m -Xss1024K -XX:MaxNewSize=512m  -XX:MaxPermSize=512m" 

tomcat自动关闭了。的更多相关文章

  1. shell 脚本解压war包+备份+tomcat自动关闭+启动

    公司的开发环境每次替换war包时候,老是需要重新上传并且手动解压,然后再去重启tomcat.觉得这样子太麻烦了,于是写了一个shell脚本,自动解压+备份+tomcat自动关闭+启动.代码如下: #关 ...

  2. 记一次解决tomcat自动关闭的bug

    最近一个运行了4年的javaee web项目,经常接到客户反馈系统无法打开.登录服务器查看服务,发现是tomcat自动关闭了.基本是3到4天发生一次. 运维人员开始以为是其他服务杀死了tomcat服务 ...

  3. 记一次TOMCAT一段时间自动关闭

    最近同事开发的一个项目部署上线后用过几天就TOMCAT自动关闭,并且该项目没有开通对外访问.通过阿里云监控台查看,从升级后系统内存占用上升趋势,CPU等信息没有太大变化. 打印服务器日志后发现全是线程 ...

  4. jenkins 通过shell启动tomcat会随着job完成而被自动关闭的解决方法

    jenkins 通过shell启动tomcat会随着job完成而被自动关闭的解决方法 填入BUILD_ID=随便填什么 原理是:我不知道

  5. secureCRT关闭连接自动关闭tomcat服务

    下午遇到一个神奇的问题: secureCRT登陆某个服务器,用shell脚本启动./catalina.sh start,打开日志tail -f catalina.out,此时 手动关闭连接窗口,导致t ...

  6. tomcat启动后过一会就自动关闭

    1.打开tomcat 下的log查看关键字眼 常见问题就是端口被占用,被idea 页面启动占用了

  7. Tomcat运行一段时间后,自动停止关闭,To prevent a memory leak,Druid 数据库连接自动关闭, the JDBC Driver has been forcibly unregistered.

    1. Tomcat 错误日志 tail -100f tomcat9/logs/catalina.out 21-Sep-2017 23:05:39.301 INFO [Thread-5] org.apa ...

  8. springboot项目启动后tomcat服务器自动关闭 解决方法

    需要在pom.xml中添加 <dependency> <groupId>org.springframework.boot</groupId> <artifac ...

  9. Tomcat的设定

    tomcat 版本  apache-tomcat-7.0.68-windows-x64 1.解压文件到 eclipse文件夹中,这个放哪都可以,个人习惯而已 2.tomcat目录结构 图片为盗图- 3 ...

随机推荐

  1. java并发--流量控制demo

    实现一个流控程序.控制客户端每秒调用某个远程服务不超过N次,客户端是会多线程并发调用,需要一个轻量简洁的实现,大家看看下面的一个实现,然后可以自己写一个实现. import java.util.Dat ...

  2. CSS中不透明度继承问题的处理

    关于CSS中不透明度的设置,除了兼容方面的问题,还有不透明度继承问题,这里只讨论下后者. 那么, 什么时候会发生不透明度继承问题? 当文档结构中有父子嵌套关系的时候,并且父元素有不透明度属性设置时,会 ...

  3. Eclipse中Ctrl+Shift+f快捷键无效的解决方式

    某天突然发现idea非常重要的快捷键ctrl+shift+f无效了,网上搜了很多都说是qq快捷键冲突,但是找了下qq快捷键却没有解决,现在给大家一个解决快捷键冲突的思路: 1.查看QQ快捷键--> ...

  4. Kotlin语言学习笔记(6)

    运算符重载(Operator overloading) 一元运算符 Expression Translated to +a a.unaryPlus() -a a.unaryMinus() !a a.n ...

  5. python 刷题必备

    1.判断输入的数字是否是回文数: 学习内容:把数字转成字符串 1. def is_palindrome(n): n=str(n) m=n[::-1] return n==m 2. tmp_str = ...

  6. mysql 数值与字符类型 长度梳理

    上述表格中的数值类型都是定长的,也就是说,无论你存的数值是多少,多大或者多小,占用的存储字节大小都是固定的.例如,设置int(1),虽然M值是1个字符,但是它所占用的空间大小永远都是4个字节的大小,换 ...

  7. Xpath同时选取不同属性的元素

    如:一个论坛中,有置顶贴和普通贴,它们使用了不同的class,但这两类帖子都是需要的内容,需要同时爬下来 假设置顶贴class="top",普通贴class="commo ...

  8. 用Python写单向链表和双向链表

    链表是一种数据结构,链表在循环遍历的时候效率不高,但是在插入和删除时优势比较大. 链表由一个个节点组成. 单向链表的节点分为两个部分:存储的对象和对下一个节点的引用.注意是指向下一个节点. 而双向链表 ...

  9. Mysql优化性能优化21条

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  10. OC 线程操作 - GCD使用 - 栅栏函数

    - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ //同步函数无需栅栏函数 //栅栏 ...