迷途书童

敏感、勤学、多思
随笔 - 77, 文章 - 4, 评论 - 86, 引用 - 0
数据加载中……

性能调优经验介绍

一个典型的J2EE系统由DB、应用、应用(WEB)服务器、JVM组成。
调优可分别针对这几个部分调优,下面介绍一下各个部分调优的一些经验。
1. DB调优:DB调优主要关注下面几个方面:1)选择合适索引;2)避免复杂查询;3)尽量将复杂运算挪到应用中,以降低DB复杂,因为让应用可伸缩的代价远比让DB可伸缩的代价低;4)避免关联查询;调优的过程中,可借助Oracle的sql将比较耗时的SQL查询出来,再针对性的优化。
2. 应用调优:应用调优主要分成两个方面:1)用Jprofiler或optimizeit等工具找出执行比较耗时的代码,并针对性的优化;2)应用运行时,通过打JVM的堆栈来分析应用的线程是否因资源竞争导致block,然后导致CPU无法充分利用,从而应用性能上不去,找出性能瓶颈后可针对性的做优化。
3. 应用服务器调优:主要调节数据库连接池大小,连接数大小(tomcat就有连接数大小)等
4. JVM调优:主要针对应用的特点,调整JVM参数,使应用运行更稳定。
判断性能调优是否到位的方法是看数据库服务器和应用服务器的CPU占用率,首先要确认不是内存的问题,确认服务器没有产生页面交换;然后就看应用侧和DB侧的CPU是否能够达到90%以上了,一般来讲,要求应用侧的CPU使用率达到90%以上。

posted on 2009-09-24 21:35 迷途书童 阅读(1943) 评论(2)  编辑  收藏 所属分类: 随感java应用深入JVM

评论

# re: 性能调优经验介绍  回复  更多评论   

什么是应用侧和DB侧?
2009-09-25 09:23 | cxh8318

# re: 性能调优经验介绍  回复  更多评论   

关联查询只能尽量避免,完全避免是不可能的
2009-09-25 09:59 | 5452

只有注册用户登录后才能发表评论。


网站导航: