OFFICE

北京市海淀区北清路68号用友软件园A座


  PHONE

86-10-62431800


  EMAIL

support@itari.com.cn

性能优化概述


2013-01-16 09:41:54    作者:ITARI     来源

 性能优化是一个很大的课题,涉及到硬件、操作系统、应用服务器、应用程序、数据库等多方面因素。如何借助一定的工具、按照特定的步骤,检测、分析出系统存在的瓶颈问题,然后解决问题,从而提升系统性能,是性能优化的工作。 针对不同的应用体系架构(如.NET平台和J2EE平台),具体的调优策略是不同的,但分析方法,调优步骤基本类似。
典型的J2EE应用架构图如下:左边是客户端,中间是应用程序服务器,右边是数据库。架构图表示了三者间的逻辑关系。客户端向应用程序服务器发出请求,应 用程序服务器针对请求进行处理,处理过程中可能要与数据库进行交互,处理完成后返回页面给客户端。应用程序服务器和数据库可以部署到一台机器上,也可以分开部署。

 

从图中可以看到,J2EE体系架构包括好多部分,因此性能优化也要从多个方面进行考虑。一般包括外围、数据库、应用服务器、应用程序、UI五个方面。

1.外围
硬件的配置(CPU、内存、硬盘等),网络速度,操作系统核心参数,TCP/IP参数以及补丁的情况等都会影响应用程序性能。
如:对操作系统的优化,除了更新最新的补丁程序以保证应用程序正常运行之外,就是调整TCP/IP参数,文件描述符,对于个别操作系统还有其他特别的参数调整。
2.数据库
数据库的优化策略,有些适应于所有的数据库,而有些只针对特定数据库。可通过一些通用的方法,如正确建立索引、表分区技术等,提高运行速度。
3.应用服务器
对应用服务器进行性能优化时,可从JVM的参数(Xms、Xmx、XX:MaxPermSize)和应用服务器自身的参数来进行调整;
4.应用程序
对应用程序的性能优化,应该从架构和代码实现两方面来进行考虑。代码使用代码走查、JAMon等方法,对页面代码、业务代码、底层代码以及典型业务进行性能优化。可根据需要,采用池化技术、缓存、异步处理、并行处理、数据库分页、任务调度等技术手段。
5.UI
UI将从可维护性、高效响应性、亲和性三个方面进行描述。
可维护性:在页面组织方面,将javascript和css维护成外部文件,页面涉及到的索引文件按照清晰的组织结构进行管理。并使用struts提供的标签或自定义标签,尽量避免在jsp页面中写逻辑代码。同时,涉及到javascript,css,jsp等文件名的定义,页面中变量、标签等页面元素的命名要符合统一的规范。
高效响应性:从两方面来考虑,第一,减少请求数。合并CSS和JAVASCRIPT文件,尽可能的减少HTTP的Request请求数。第二,异步刷新。适当使用AJAX技术,为页面提供异步传输和局部刷新特性。异步传输减少了用户等待时间,提升了用户体验;局部刷新优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用;
亲和性:指界面风格的一致,并且在使用时有明确的操作提示。

文章评论

{{loginInfo.name}}登录后参与评论
登录 发表评论
{{post.usrName}}回复{{post.replytoUserName}}