日期:2014-05-19  浏览次数:20674 次

Java项目性能优化,一般步骤?做到哪几点?应怎样做?
Java项目性能优化,一般做哪几点?

B/S和C/S项目 会不会有区别?

常使用哪些工具检测?(JDK自带的jconsole.exe 、Jprofiler)

(打印时间看方法运行时长,用工具检查内存)

------解决方案--------------------
无论哪类优化,先找瓶颈,不然可能适得其反
------解决方案--------------------
如1楼所说,性能优化,优化目标和优化对象很重要。

工具都是用来寻找瓶颈的,寻找瓶颈分为两个度:
广度:功能; 深度:层次/环节。

寻找瓶颈的过程,就是不断在这个两个度上进行迭代的过程,比如:
1、广度:定位哪个功能慢,比如:统计;
2、深度:定位那个层次慢,比如:后台Java代码部分;
3、广度:定位哪个类或函数慢,比如:穷举所有结果并计算和的函数;
4、深度:定位那个步骤慢,比如:居然每次找结果都要另外发起Select请求;

例子不一定恰当,但大致就是这个意思。
------解决方案--------------------
优化包括很多方面,比如
数据库方面的,比较常见的让查询更快;
代码层面的,比如让代码执行效率更高,内存合理使用等;
配置方面的,比如如何让硬件配置、服务配置更合理等。
优化还看是什么样的系统,有的系统对实时性要求较高,有的对准确性要求较高,有的对响应要求较高等。
总之做到合理优化,需要优化的优化。工具有一些,各个层面上工具也不一样,可以在实际应用中积累。
------解决方案--------------------
优化包括很多方面,比如
数据库方面的,比较常见的让查询更快;
代码层面的,比如让代码执行效率更高,内存合理使用等;
配置方面的,比如如何让硬件配置、服务配置更合理等。
优化还看是什么样的系统,有的系统对实时性要求较高,有的对准确性要求较高,有的对响应要求较高等。
总之做到合理优化,需要优化的优化。工具有一些,各个层面上工具也不一样,可以在实际应用中积累。