- 浏览: 231061 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (226)
- websphere (12)
- Websphere Portlet Factory (2)
- portal (8)
- SOA (14)
- Requirement (5)
- Management (23)
- Open Source (9)
- design (21)
- JDK (34)
- Diary (16)
- Database (26)
- UI (18)
- Audio (1)
- Security (5)
- 水平网站 (2)
- 其他 (6)
- J2EE事务相关 (8)
- Spring (3)
- Integration (3)
- Mobile Programming (1)
- Cloud (2)
- 性能调优 (11)
- Hibernate (5)
- 算法 (1)
最新评论
-
hanmiao:
我在IBM网站上找到这篇文章,比较详细的介绍了信息分片与信息分 ...
Websphere MQ -
lancezhcj:
...
Oracle索引 -
shaier:
讲的很不错啊!
SERVICE_NAME, SID和schema区别 -
echohfut:
好久没有关注了。但是取下来的代码怎么导入Eclipse呢?
liferay笔记 -
webee:
已经有ide了!命令都可以不要了!
liferay笔记
为了查看Eclipse GC log,需要在eclipse.ini 中加入
-XX:+PrintGCTimeStamps -XX:+PrintGCDetails -verbose:gc -Xloggc:gc.log
在Eclipse安装目录查看gc.log
9.768: [Full GC 9.769: [Tenured: 7678K->9025K(27328K), 0.3117731 secs] 9172K->9025K(39616K), [Perm : 16383K->16383K(16384K)], 0.3122537 secs]
从上面的日志看似有perm 区(16384K)满引起的Full GC, 需要增大perm区空间和初始空间
-XX:PermSize=64m -XX:MaxPermSize=64m
在重启Eclipse有如下log
1.338: [GC 1.338: [DefNew: 10944K->1028K(12288K), 0.0223470 secs] 10944K->1028K(39616K), 0.0224436 secs] [Times: user=0.03 sys=0.00, real=0.03 secs]
2.053: [GC 2.053: [DefNew: 11972K->434K(12288K), 0.0159322 secs] 11972K->1431K(39616K), 0.0161071 secs] [Times: user=0.01 sys=0.00, real=0.02 secs]
2.923: [GC 2.923: [DefNew: 11378K->1048K(12288K), 0.0192125 secs] 12375K->2044K(39616K), 0.0193916 secs]
貌似初始yong 区空间小了引起yong GC,让初始堆空间跟最大堆空间一样大(yong区应该也会按比例增大吧),GC消除了。
最终eclipse.ini如下
-startup plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222 -product org.eclipse.epp.package.java.product --launcher.XXMaxPermSize 256M -showsplash org.eclipse.platform --launcher.defaultAction openFile -vmargs -Dosgi.requiredJavaVersion=1.5 -Xms384m -Xmx384m -XX:PermSize=64m -XX:MaxPermSize=64m -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -verbose:gc -Xloggc:gc.log
有趣的是关掉Eclipse会看到如下的log
20.639: [GC 20.639: [DefNew: 104960K->12258K(118016K), 0.2109056 secs] 104960K->12258K(380160K), 0.2110277 secs] [Times: user=0.20 sys=0.00, real=0.20 secs]
31.909: [GC 31.909: [DefNew: 117218K->7351K(118016K), 0.2577353 secs] 117218K->19392K(380160K), 0.2578431 secs] [Times: user=0.24 sys=0.00, real=0.25 secs]
Heap
def new generation total 118016K, used 37344K [0x02b00000, 0x0ab00000, 0x0ab00000)
eden space 104960K, 28% used [0x02b00000, 0x0484a4c0, 0x09180000)
from space 13056K, 56% used [0x09180000, 0x098add90, 0x09e40000)
to space 13056K, 0% used [0x09e40000, 0x09e40000, 0x0ab00000)
tenured generation total 262144K, used 12041K [0x0ab00000, 0x1ab00000, 0x1ab00000)
the space 262144K, 4% used [0x0ab00000, 0x0b6c25c0, 0x0b6c2600, 0x1ab00000)
compacting perm gen total 65536K, used 36982K [0x1ab00000, 0x1eb00000, 0x1eb00000)
the space 65536K, 56% used [0x1ab00000, 0x1cf1d8e0, 0x1cf1da00, 0x1eb00000)
No shared spaces configured.
发表评论
-
jvisualVM profiling分析
2012-06-29 22:34 10121. 用jdk1.6自带的JVisualVM版本好像比较低,最 ... -
java 常见排序算法
2011-10-26 22:25 854摘自http://deng5566.iteye.com ... -
code review
2011-07-24 10:50 892Code Review时考虑到的有 a. 从Col ... -
有趣的java类
2011-07-24 10:20 9071. WeakHashMap 作用:访问这个map时会检查所 ... -
jdk泛型
2011-07-02 22:09 9341. 泛型不是协变的 List<Object> ... -
通过网络加载类
2011-03-14 09:21 727RMI / RPC / Web Service 调用 ... -
JDK中用到的设计模式
2011-02-19 19:28 14121. java.io 中用到了装饰模式和适配器模式 装饰模式 ... -
单例类
2011-02-09 20:10 796单例类中考虑到的有: 1. 私有的构造函数 2. stat ... -
如何简单的得到Java进程的stack trace dump
2010-12-13 22:25 1339最简单直接变态的方法是:找到这个java进程的id(linux ... -
Class Loader
2010-11-26 14:18 813学习ClassLoader有几个关 ... -
ClassNotFoundException and NoClassDefFoundError
2010-11-26 13:51 1810From: http://jroller.com/sjivan ... -
如何避免两个对象的相互引用引起的堆栈溢出
2010-11-21 07:38 1105两个对象相互引用,并且这种引用关系定义在构造函数中时,初始化这 ... -
java 对象状态
2010-11-15 17:43 2406对象一共有六种状态: 强引用有三种, 可触及的 ... -
java 中多继承
2010-11-14 09:58 732我们知道,java是不支持多继承的。要实现此目的, 方法一: ... -
动态加载类的方式
2010-11-08 12:29 813背景知识:类的初始化前还需要有两个阶段:load和连接。连接又 ... -
深入Java虚拟机
2010-11-03 09:27 8841. 能否自己写一个java.lang.Virus类用?该类能 ... -
Java正则表达式
2010-10-23 21:42 2941转自:http://hi.baidu.com/xu_yunan ... -
HotSpot GC
2010-10-14 08:22 1015按代的垃圾收集机制, 主要分为三种: 复制算法,空间被 ... -
多线程同步
2010-08-17 17:10 7491. synchronized语句 同步的代码块尽量 ... -
java中的动态代理
2010-08-17 14:13 850jdk中动态代理只支持接口的方式 实现方式是: ...
相关推荐
- `-verbose:gc` 和 `-Xloggc:gc.log`:启用详细垃圾回收日志,并指定日志文件路径,这对于监控和调优JVM行为非常有用。 2. **Eclipse 配置文件优化**: - 打开Eclipse的安装目录,找到 `eclipse.ini` 文件进行...
- **LogCat窗口**:用于监视Android日志控制台(LogCat),可以查看由Log.i()、Log.e()等方法产生的日志消息。 - **进程管理**:可以查看进程的堆和线程信息,终止进程,触发垃圾回收(GC)等。 - **屏幕截图**:使用...
这个工具只能在1.5以下的版本中运行,1.6以后没有对应。这个工具是根据JVM的GC执行的log来视图化的. 需要再eclipse 配置里添加: -Xloggc:D:/logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps
2. **缓存清理**:定期清理.metadata\.log和.metadata\.plugins目录下的临时文件,可以避免因缓存过大导致的启动缓慢。 3. **工作空间优化**:尝试使用不同的工作空间,或者减小工作空间内项目的数量,以减少加载...
软引用和弱引用则用于在内存不足时进行精细化的内存管理,它们在GC时会被自动清理,以避免内存溢出。虚引用则更特殊,它不直接指向对象,而是用于对象的finalize()方法执行后进行清理工作。 "Eclipse调优"是提升...
verbosegc,将GC输出到gc.log文件中 java -verbose:gc -Xloggc:gc.log -XX:+ PrintGCDetails -jar Learn-tomcat-memory-leak-0.0.1-SNAPSHOT.jar 使用jstat命令观察GC的过程 jstat -gc 94223 2000 1000 通过GC...
包括top,dumpsys meminfo,LeakInspector,JHat,GC Log等,这些工具可以帮助开发者监测和分析内存使用情况。 九、内存问题总结 列出了如内类,Handler,系统服务,图片资源管理等方面可能出现的内存问题,并提供...
- **代码性能分析**:使用JVisualVM或VisualGC等工具监控和分析Java应用的内存使用、CPU消耗等。 10. **部署与运行环境**: - **Tomcat或Jetty服务器**:Java Web项目通常需要在Web服务器上运行,如Apache Tomcat...
Java虚拟机(JVM)参数如堆大小(`-Xms`,`-Xmx`),垃圾收集器(`-XX:+UseG1GC`),以及其他性能相关的选项,可以显著影响应用性能。 10. **国际化与本地化**: 使用`ResourceBundle`处理多语言支持,通过`...
- 垃圾回收log:记录GC活动的日志。 - domain_name.log:域日志。 - jms.messages.log:JMS消息日志。 ### 3. 启动脚本与配置参数文件的获取 获取WebLogic的启动脚本和配置参数文件对于了解服务器的配置和定制化...
2. 使用外部工具:例如使用 Eclipse 的 Memory Analyzer Tool (MAT) 工具来分析程序的内存使用情况。 结论 Java.lang.OutOfMemoryError: Java heap space 是一种常见的 Java 错误,解决该问题需要从多方面入手,...
日志框架如Log4j、Logback和SLF4J可以帮助我们管理和格式化日志输出。 2. **性能监控**:Java平台提供了JMX(Java Management Extensions)来监控应用程序的性能指标,如CPU使用率、内存占用、线程状态等。此外,...
log4j logback commong logging jdk logger 测试框架 测试框架 junit easymock testng mockito bug管理 禅道 jira 开发工具 编程工具 eclipse myeclipse idea vi VS webstorm sublime text ...
4. **JMap**:配合eclipse插件或MemoryAnalyzer检测内存泄漏。 5. **JProfiler**:提供全面的系统监控,包括CPU、内存和线程等。 6. **Nmon**:全面监控Linux系统资源,适合系统级别的性能分析。 7. **Valgrind**:...
同时,启用G1垃圾收集器(-XX:+UseG1GC)以改善内存管理。 2. **插件管理**:MyEclipse中包含许多插件,但并非所有插件都适用于每个项目。关闭不使用的插件可以减少内存占用。通过"Window" -> "Preferences" -> ...
1. 开发环境:通常使用Java IDE如IntelliJ IDEA或Eclipse,配合Maven进行项目构建。 2. 编译与运行:通过Maven的`mvn clean install`命令编译项目,然后启动主类运行网关服务。 3. 配置与调试:修改配置文件以适应...
使用IBMHeapAnalyzer工具分析heapdump文件,发现名为org/eclipse/osgi/framework/log/FrameworkLogEntry的对象占用了近1.3GB的堆内存,远超JVM的最大堆内存1536MB,这是引发问题的直接原因。 深入分析: 1. **OSGI...
10. **性能优化**:Java的性能优化涉及到内存管理(如理解GC机制)、避免阻塞操作、减少对象创建等,这需要对JVM的工作原理有一定了解。 这个压缩包中的"赚钱项目"可能是具体的数据处理项目实例,可能涵盖了上述...