|
该帖已经被评为精华帖
|
|
|---|---|
| 作者 | 正文 |
|
时间:2007-07-18
文章非常不错,我们系统碰到了一个几乎和你碰到差不多的问题,试试你的方法,成功后上来告诉你。
|
|
| 返回顶楼 | |
|
时间:2007-07-19
推荐使用JPROF及其相关的TPROF, HDUMP, ITRACE等工具,没有图形界面,不会像jprofiler那样占用大量资源,配合WAS产品比较合适。
http://perfinsp.sourceforge.net/jprof.html |
|
| 返回顶楼 | |
|
时间:2007-08-12
下面是我和搂主的消息讨论,感觉还有点用,所以就贴出来了:
我的发言: window 32bit 确实java heap 最大可以分配到2047M(2G-1),不能超过这个,但通常情况这个大小也设置不了,这个大小os限制的。整个jvm使用的内存不仅仅局限在heap,heap之外还有 JIT,JNI....,所以我当我在websphere5.1的时候分配2047M 的时候 系统自动把我的heap 最大值 限制在1.5G左右。 windows 确实可以扩展2G-1的限制,windows 里有一个 boot.ini 文件,里面可以进行设置。 还有些问题请教,我通过长时间的优化系统的一些性能表现: gc 平均收集间隔时间是:1.2分钟。 gc的平均收集时间是:511ms 请问这样的性能表现,怎么样,一般的性能参照值是多少?谢谢! 附件是一个 有关windows 内存限制的 ibm 技术文档 楼主的回复: 你附件里面的文档比我以前上传的一篇IBM JVM文档详细多了。而且你上面的分析很客观,Heap只是JVM占内存一个部分,大约是80%,这个很容易验证。 说到性能调优,你看看网上这个blog的系列文章吧:http://songsun.spaces.live.com/,很详细,而且也很客观。 你的GC频率有点偏高,GC收集时间也有点偏大,譬如3-4分钟,每次0.3s左右就差不多了(一般JVM默认就可以是这个值)。不过,说实话,这个都不太重要,把GC收集时间优化大点就可以了。 一般来说,JVM的调优主要是适应硬件和特殊情况,譬如我的服务器有四个cpu,就要调节JVM的concurrent GC特性;我用到了特别的内存Cache,就要专门把Heap弄大点。 应用的性能,主要是程序本身来决定,譬如架构、DB设计、list列表分页,Hibernate二级缓存等,JVM关系不大。真正对JVM的GC敏感的是Java的嵌入式系统,实时系统。MIS系统关系不大。 |
|
| 返回顶楼 | |
|
时间:2007-08-16
我这边的生产环境现在也报内存溢出的问题,现在每天都定时重启
可在测试环境又不能重现问题,真是头痛啊 生产环境又不能取消重启的动作,希望各位给点意见 |
|
| 返回顶楼 | |
|
时间:2007-08-28
看和做两种感觉,感谢楼主的分享。Java最大的毛病就是规范太多,导致实现不同,虽然大体思路一致,不过实现细节差别很大,具体项目应用比较头疼。不过这好像也是java各种思想百花齐放的原因吧,具体看项目负责人的取舍和对相应实现的理解程度了。
|
|
| 返回顶楼 | |
|
时间:2007-09-04
IBM就喜欢把简单问题复杂化,一个 WAS害了多少应用程序,其实看看这些应用程序本身并不复杂,用其他技术如php,rails来实现不会有那么多问题,甚至跑在tomcat上也不会有那么多问题。不要迷信WebSphere
|
|
| 返回顶楼 | |
|
时间:2007-09-26
今年看的最好的关于websphere的帖子,楼主继续努力
|
|
| 返回顶楼 | |
|
时间:2007-09-28
我们这里也有WebSphere6.0,同样的代码我们布署在bea weblogic8都没问题,可是一放在websphere上
基本天天down 机。也不知怎么办。现场人员又不知出了什么事。只是偶尔发一两个日志。搞不懂。IBM的东东实在不懂的用呀? [07-9-25 12:29:49:643 CST] 000000c0 SystemErr R java.lang.NullPointerException [07-9-25 12:29:49:644 CST] 000000c0 SystemErr R at com.ibm.ws.tcp.channel.impl.SocketIOChannel.attemptWriteToSocket(SocketIOChannel.ja va:830) [07-9-25 12:29:49:644 CST] 000000c0 SystemErr R at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java:629) [07-9-25 12:29:49:644 CST] 000000c0 SystemErr R at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java:952) [07-9-25 12:29:49:644 CST] 000000c0 SystemErr R at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java:1039) [07-9-25 12:29:49:644 CST] 000000c0 SystemErr R at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1471) |
|
| 返回顶楼 | |
|
时间:2007-09-29
zwchen,
你好. 我也是刚刚接触websphere,以前觉得它挺麻烦的,读了你的两篇文章和大家的一些回复,感觉对我帮助很大,我按照上边的实践,解决了很多问题.不过现在又遇到了一些问题,就是用jprofiler监控Websphere6.1的时候,通过jprofiler启动Websphere的时候,老出错,提示: ------------------------------- failed to start startServer return code = -1 ------------------------------- 在Websphere日志native_stderr.log中出现 ------------------------------------------------------- <verbosegc version="20060501_AA"> JVMJ9TI001E Agent library jprofilerti could not be opened (找不到指定的模块。 ) JVMJ9VM015W Initialization error for library j9jvmti23(-3): JVMJ9VM009E J9VMDllMain failed </verbosegc> 无法创建 Java 虚拟机。 -------------------------------------------------------- 在我的server1的配置文件server.xml中,jprofiler添加的内容如下: --------------------------------------------------------- genericJvmArguments="-agentlib:jprofilerti=port=8849 -Xbootclasspath/a:F:\JPROFI~2\bin\agent.jar" --------------------------------------------------------- 我在baidu和google上搜索关于jprofiler的Websphere资料,可惜却几乎找不到,你能帮-帮-我吗~?将你以前使用jprofiler的情况帮我整理一下.我的邮箱是zhongwu@tom.com , 谢谢了. |
|
| 返回顶楼 | |
|
时间:2008-05-14
研究了一个月.
现在算是能用websphere开发了.. 公司都用的wsad.. 我觉得不爽,用了myeclipse 的blue版本. 现在感觉也还可以. 总的来说websphere要求太严格了. 很多地方很麻烦.. |
|
| 返回顶楼 | |






