论坛首页 Java企业应用论坛

[表示怀疑]什么样的优化能让Java程序性能提高2.5倍?

浏览 39184 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-11-26  
flyingbugs 写道
1。分代式的GC已经是很普遍的技术
2。不管GC如何进步,它的开支仍然是不可忽视的。

很多人还告诉过我 java还比C++快呢(在单纯的执行效率上),

就好像实现了负能炼钢一样。


请不要试图岔开话题,我并没有说Java比C++快。我说的是Java 1.3的GC比1.1的快,并且采用了不同算法,因此instance pooling这种在1.1适用的模式到1.3以后就变成了反模式。正因为不能忽视GC的开销,所以我们应该大量创建短命的对象,避免instance pooling,这样才能缩小GC的范围和难度。
0 请登录后投票
   发表时间:2004-11-26  
MSDOS和Windows XP

和Tuxedo / weblogic就不是一个可以对比的概念。

开发xp中用到的绝大部分技术,在开发dos中是没有的,甚至是没考虑过的。

而Tuxedo / weblogic 其实是个相互竞争和相互促进的。
它们两象两兄弟。 使用到的解决问题的 方法论 和 技术有着很大相同。
0 请登录后投票
   发表时间:2004-11-26  
因此instance pooling这种在1.1适用的模式到1.3以后就变成了反模式。

这要看 你的pool到底是怎么实现和用来做什么了。
可能在ejb中实体bean的这种pool模式确实不是个好的实现。
但你不能否认,如果精心设计过的pool/cache能带来很好的效果。
所以不能说:GC提高了,pool就一定成了反模式。
0 请登录后投票
   发表时间:2004-11-26  
sigh,越说越离题万里。算了,我只想知道,那个被你优化的、内存操作耗用时间达到60%的Java应用,它究竟是干什么用的。能不能请正面回答?
0 请登录后投票
   发表时间:2004-11-26  
我承认 从学术上来说 我不怎么懂 java 不怎么懂j2ee。

我做过一些企业的比较大的项目,用到过 Cics/Tuxedo 还有一些自主开发的中间件框架。
对编译原理和vm技术挺感兴趣,看过Rotor代码,实现过一个商业的编译器和解释器。
对于java我是从一年 说起来快两年前开始正式的使用。我看的理论的书籍并不是很多,大概也就一些设计模式的。
java确实是规范巨多,希望各位大 虾能多多指教啊。

本人说话可能比较不留面子,希望这个论坛的各位兄弟海涵。 呵呵

gigix, 我看过你的blog了, 你确实是个理论很丰富的哥们,这与你当过csdn编辑有这很大的联系,文笔挺好的。
我不是很善意说话,有些话可能有所得罪。不好意思,纯属对技术 而不对人。
0 请登录后投票
   发表时间:2004-11-26  
哦 那个应用啊
是做应用级路由的
也算是 EAI 的一个方面吧。
0 请登录后投票
   发表时间:2004-11-26  
flyingbugs 写道
因此instance pooling这种在1.1适用的模式到1.3以后就变成了反模式。

这要看 你的pool到底是怎么实现和用来做什么了。
可能在ejb中实体bean的这种pool模式确实不是个好的实现。
但你不能否认,如果精心设计过的pool/cache能带来很好的效果。
所以不能说:GC提高了,pool就一定成了反模式。


谁说:GC提高了,pool就一定成了反模式?
你传话的时候怎么老是删掉几个词?
0 请登录后投票
   发表时间:2004-11-26  
学习的时候关注底层过多,还能把握好整体的人比较少。

我熟悉很多这样的。
0 请登录后投票
   发表时间:2004-11-26  
对于Java应用的性能优化,我赞同前面有位同志说的:第一是不要优化,第二还是不要优化。(这个“不要优化”是专指内存操作而言的,I/O和RPC当然是要尽量优化。)为什么说不要优化?第一是优雅架构和性能优化之间的矛盾,这个讨论过很多次了。但我看这还不是最关键的。关键是,你不能保证自己做的优化有效,这是虚拟机语言和C++之间最大的区别所在。做C++的程序,你知道自己每条语句是在干什么,所以优化肯定是有效的;但做虚拟机语言(就像Java、C#),虚拟机设计通常会参考程序员的常见习惯,所以如果你自己想当然地做些优化,写些不常见的代码,很可能反而被虚拟机弄得更慢,instance pooling就是这样的例子。所以我觉得,除非万不得已,除非有可靠的profile数据作为证据,否则不要对Java的内存操作做优化。
0 请登录后投票
   发表时间:2004-11-26  
flyingbugs:
大家都很希望你详细说明一下你的优化过程
这里并不欺生,只不过比较较真而已
所以一定要看到真凭实据才罢休
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics