硬件:一台centoslinux64位8G,2核的server。四个生产tomcat。废话不多说,喷子勿扰,上截图。jvm及tomcat调优配置截图:结果查看:先用top获得java虚拟机的进程pid,然后使用jstat-gcpid5000命令查看每个虚拟机内存使用情况如图:上面是优化的生产环境,下面我们看看未做任何..
分类:
其他好文 时间:
2016-06-28 14:37:32
阅读次数:
148
点击进入_更多_Java千百问1、fullGC、minorGC、magorGC有什么区别fullGC、minorGC、magorGC还有youngGC是Java垃圾处理机制(GC)的名词,区分这几个概念非常简单:
老生代进行一次垃圾清理,被称为fullGC或者magorGC。
新生代进行一次垃圾清理,被称为youngGC或者minorGC。
了解java垃圾回收机制看这里:java垃圾回收机制是什么...
分类:
编程语言 时间:
2016-05-29 09:46:25
阅读次数:
269
在linux中打开的一刹那,第一感觉就是这货怎么这么丑,用的时候还发现,这货怎么这么慢。 可以通过使用GTK2来让它的图标显示得合理一些,可以调整内存的限制来减少fullGC的次数。 配置文件的路径:/usr/lib/eclipse/eclipse.ini 以下是修改后配置文件的内容,合不合理我也不 ...
分类:
系统相关 时间:
2016-05-14 11:29:50
阅读次数:
1094
1.生产环境的异常现象及初步分析最近发现系统程序内存消耗越来越大,开始并没特别注意,就简单调了一下jvm参数。但直到前些天内存爆满,持续FullGC,这肯定出现了内存泄露。原以为哪里出现了比较低级的错误,所以很直接想到先去看看程序是在跑哪段代码。jstack-l<pid>以..
分类:
编程语言 时间:
2016-04-27 11:04:44
阅读次数:
333
郑昀 基于田志全和端木洪涛的分析报告 2015/6/30 关键词:Java,JDBC,升级,MySQL驱动,频繁数据查询,mysql-5.1.34,mysql-5.0.7 问题现象: 2015年4月22日(周日)晚间,线上 TaskMall 工程(一个 Java 工程)频繁报警。分析 jvm 情况, ...
分类:
数据库 时间:
2016-03-29 14:35:17
阅读次数:
309
内存泄漏及解决方法1.系统崩溃前的一些现象:每次垃圾回收的时间越来越长,由之前的10ms延长到50ms左右,FullGC的时间也有之前的0.5s延长到4、5sFullGC的次数越来越多,最频繁时隔不到1分钟就进行一次FullGC年老代的内存越来越大并且每次FullGC后年老代没有内存被释放之后系统会...
分类:
编程语言 时间:
2015-12-05 17:23:57
阅读次数:
164
下面我们看一下Apache的MaxClients参数在Full GC发生时是如何影响系统的。大部分开发人员都知道在由于GC发生而导致的”停止世界现象(STW) “(详细请参见Understanding Java Garbage Collection)。尤其是,NHN的Java开发人员经常会遇到由于G...
分类:
编程语言 时间:
2015-10-18 06:35:31
阅读次数:
228
从目前这几天的运行情况看,每天晚上0点到3点,应该是你们那边有大数据任务处理,在这个时间段,SOA会频繁报ZK断开重联的告警,见下图。类似的问题,在CRM系统上也有出现过,我们dump内存,分析后,结论如下,看是否你们有类似的情况,供参考:代码中使用了大量循环,在循环体中产生了众多对象,这些对象基本...
分类:
其他好文 时间:
2015-08-29 12:34:14
阅读次数:
225
6月25日OMS,Ihotel上线成功后执行了一个批处理,SOA报警提示某一台IHOTEL机器调用OMS失败率大于阀值,登录这个机器后发现这台机器CPU使用率处于80%以上,调用OMS有的时候超过5秒。tomcat日志显示一直在执行fullGC.tomcat报错:后联系OPS重启这台机器上的tomc...
分类:
其他好文 时间:
2015-08-29 12:23:57
阅读次数:
191
接着前面的,现在来计算老年代的
日志图:
1.假如没有FullGc,如何计算老年代需要多少时间装满?
(不看第一条和最后一条数据,分析)通过MinorGc计算每次老年代的增量
老年代的增量 = 堆的总量 - 新生代的剩余量(souvivor区)
这样可以得到几乎每次minorGc老年代增加85m空间,而minorGc每4秒一次。
老年代的...
分类:
其他好文 时间:
2015-08-28 15:38:40
阅读次数:
282