- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.Websphere JVM相关问题诊断:
由JVM引起的Websphere问题主要有应用服务器宕机和性能下降,JVM相关问题的特征如下:
(1).Websphere应用服务器停止响应:
a.Websphere服务器宕机。
b.Websphere进程挂起。
c.JVM内存溢出。
(2).性能下降:
JVM进程号(process Id)不停地改变。
2.诊断JVM相关问题所需文件:
(1).核心文件(Core files):
a.进程快照或者系统的核心文件。
b.完整的JVM内存快照等。
注意:文件非常庞大,需要ISA(IBM Support Assistant)的日志分析工具解析。
(2).javacore文件:
a.正在运行的java进程的快照。
b.Websphere应用服务器发生错误时自动生成的文件。
存储路径为:WAS_install_root/profiles/profile。
(3).JVM详细的垃圾回收器日志。
(4).JVM堆快照。
3.JVM垃圾回收器日志:
(1).设置Websphere中JVM垃圾回收器步骤:
在Websphere管理控制窗口点击:Servers-Application servers-server_name-Java and Process Management -Process Definition-Java Virtual Machine, 勾选” Verbose Garbage Collection ”复选框,重启Websphere即可。
(2).JVM详细的垃圾回收器日志写在系统错误日志文件中(native_stderr)。
(3).在产品发布以后,推荐将Websphere的JVM垃圾回收器日志打开,它消耗资源非常的少。
4.JVM关于堆的相关参数设置:
(1).JVM最大的堆内存大小(maximum heap, -Xmx):
设置合理的最大堆有助于JVM优化性能,最大堆越大,JVM垃圾回收器收集一次垃圾花费的时间越长;最大堆越小,JVM垃圾回收器运行很频繁。
合理的最大堆应该是稍微大于当程序运行稳定时所需的最大堆容量。
(2).JVM初始化堆内存大小(minimum heap,-Xms):
设置合理的最小堆可以提高Websphere应用服务器的启动时间。
最小堆太小,JVM可能在服务器启动重新过程不断调整重新设置最小堆,从而影响启动速度。
最小堆太大,垃圾回收器需要回收较大的内存空间,容易产生内存碎片。同时由于初始堆内存太大,分配堆内存花费的时间比较大,程序响应速度慢。
5.JVM垃圾回收器性能指标:
垃圾回收器是JVM中引起内存性能瓶颈的主要原因,JVM的垃圾回收器性能指标:
(1).吞吐量(Throughput):
指JVM没有花费在垃圾回收器上的百分比,即JVM在处理程序运行所花费时间占整个JVM运行时间的百分比。
(2).暂停(Pauses):
指JVM垃圾回收器运行时间的百分比,即因为JVM垃圾回收器运行而暂停应用程序处理时间占整个JVM运行时间的百分比。
6.Websphere中JVM垃圾回收器的回收策略(GC policy):
(1). –-Xgcpolicy:optthruput
让JVM尽可能花最多时间处理应用程序,尽量减少垃圾回收器的运行时间。
(2). –-Xgcpolicy:optavgpause
让JVM尽可能多回收垃圾,当不可预知的情况发生时,应用程序响应时间比较快。
(3). –-Xgcpolicy:gencon
适合于应用程序需要大量分配堆内存给短存活周期对象的情况,垃圾回收器使用分代复制算法,让垃圾回收器尽快回收已经死亡的年老代对象。
(4). –-Xgcpolicy:subpool
适合于应用程序在多个线程中频繁给大对象分配堆内存的情况。
7.通过JVM线程快照诊断进程挂起问题:
当怀疑JVM进程挂起时,以下的方法可以帮助诊断JVM进程挂起相关问题:
(1).收集JVM线程快照或者JavaCore文件:
Websphere默认是打开的,也可以在命令行(linux)中通过”kill -3”向Websphere发送信号产生JVM线程快照和JavaCore相关文件。
(2).当进程挂起时,每个几分钟收集一下JVM线程快照:
当进程挂起产生时,需要每个几分钟收集一下JVM线程快照,以帮助分析进程内部的运行情况。
(3).手动或者通过ISA的线程分析器查看JVM线程快照文件:
a.检查是否有线程死锁产生。
b.检查所有发送请求后等待响应的线程运行情况。
8. 通过JVM JavaCore文件诊断进程挂起问题:
查看javacore文件主要根据线程的运行状态进行相应的问题诊断:
(1).线程处于阻塞状态:
a.无法访问的资源,或者逻辑错误的线程同步都有
文档评论(0)