从目前这几天的运行情况看,每天晚上0点到3点,应该是你们那边有大数据任务处理,在这个时间段,SOA会频繁报ZK断开重联的告警,见下图。类似的问题,在CRM系统上也有出现过,我们dump内存,分析后,结论如下,看是否你们有类似的情况,供参考:代码中使用了大量循环,在循环体中产生了众多对象,这些对象基本...
分类:
其他好文 时间:
2015-08-29 12:34:14
阅读次数:
225
用到的工具:Product -> Analyze
该工具使用简单,能在代码编译的过程中进行内存分析,找出代码中潜在的内存泄露隐患。而不需要实际运行。
分析结束后会在Issue navigator得到类似Warring、Error的信息:
指出了各内存泄露点。
其中:
Dead store
Value stored to 'xxxx' is never r...
分类:
移动开发 时间:
2015-08-28 13:29:54
阅读次数:
176
这是一篇阅读MAT helper的笔记。Heap dump是java进程在特定时间的一个内存快照。通常在触发heap dump之前会进行一次full gc,这样dump出来的内容就包含的是被gc后的对象。dump文件包含的内容:1,全部的对象:类,域,原生值和引用;2,全部的类:classloade...
分类:
编程语言 时间:
2015-08-21 11:08:29
阅读次数:
203
一、字节和地址 1.内存以字节为单位 每个字节都有自己的内存地址,根据地址就可以找到该字节。整个内存相当于一整个酒店,而酒店以房间为单位,在这里每个房间就相当于是每个字节,地址就是房号,根据房号可以找到房间(根据地址也可以找到内存中的字节)。相邻房间的房号是连续的,相邻字节的地址也是连续的。计算机....
分类:
其他好文 时间:
2015-08-21 00:04:59
阅读次数:
148
在Java中,内存的管理分为:Stack(栈),Heap(堆),DataSegment(数据段),CodeSegment(代码段)Stack(栈):基本数据类型(byte,short,int,long,char,float,double,boolean),局部变量,对象的引用地址Heap(堆):存放对象实例,new出来的东西放这里DataSegment(数据段):静态变量和字符串常量C..
分类:
编程语言 时间:
2015-08-19 17:27:14
阅读次数:
126
黑马程序员入学blog ...
接着上一章的代码:
//车类
class Car{
//事物的公共属性使用成员变量描述。
String name; //名字的属性
String color; //颜色属性
int wheel; //轮子数
//事物的公共行为使用函数描述。
public void run(){
System.out.println...
分类:
编程语言 时间:
2015-08-19 00:40:36
阅读次数:
139
最近在读《深入理解Java虚拟机》,对Java对象的内存布局有了进一步的认识,于是脑子里自然而然就有一个很普通的问题,就是一个Java对象到底占用多大内存? 在网上搜到了一篇博客讲的非常好:http://yueyemaitian...
分类:
编程语言 时间:
2015-08-13 16:01:43
阅读次数:
146
一 Java内存分析工具扫盲如果像我一样一点都不了解,可以先进行内存分析工具扫盲MAT介绍: Eclipse Memory Analyzer(MAT)一个功能丰富的 JAVA 堆转储文件分析工具,可以用于发现内存漏洞和减少内存消耗。二 Eclipse MAT插件安装当前机器环境描述:[plain]v...
分类:
移动开发 时间:
2015-08-12 11:29:47
阅读次数:
238