下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

Tomact性能调优的方案

作者:课课家教育     来源: http://www.kokojia.com点击数:584发布时间: 2016-06-28 15:46:27

标签: Tomact性能调优操作系统

  性能调优的初衷就是,满足用户需求,进一步进行系统分析找出瓶颈,优化瓶颈,提高系统整体性能。

Tomact性能调优的方案_Tomact_性能调优_课课家

  一、操作系统调优

  对于操作系统优化来说,是尽可能的增大可使用的内存容量、提高CPU的频率,保证文件系统的读写速率等。经过压力测试验证,在并发连接很多的情况下,CPU的处理能力越强,系统运行速度越快。。

  【适用场景】任何项目。

  二、java虚拟机调优

  Tomact本身不能直接在虚拟机上运行,需要依赖于硬件基础之上的的操作系统和和一个java虚拟机,你可以根据个人的需要选择不同的操作系统和对应的版本,例如选择SUN的JDK或JVM,在满足项目需要的前提下,尽量选用版本较高的JVM,一般来说高版本产品在速度和效率上比低版本会有改进。

  JDK1.4比JDK1.3性能提高了近10%-20%,JDK1.5比JDK1.4性能提高25%-75%。

  因此对性能要求较高的情况推荐使用JDK1.6。

  【适用场景】任何项目。

  三、Apache集成Tomcat

  Web服务器专门处理HTTP请求,应用服务器是通过很多协议为应用提供商业逻辑。虽然Tomcat也可以作web服务器,但其处理静态html的速度比不上Apache,且其作为web服务器的功能远不如Apache,因此把Apache和Tomcat集成起来,将html和Jsp的功能部分进行明确分工,让Tomcat只处理Jsp部分,其他的由Apache,IIS等web服务器去处理,由此大大提高Tomcat的运行效率。

  如果一个项目中大量使用了静态页面、大量的图片等,并有有较大的访问量,推荐使用Apache集成Tomcat的方式来提高系统的整体性能。

  Apache和Tomcat的整合有三种方式,分别是JK、http_proxy和ajp_proxy.其中JK方式是最常见的方式,JK本身有两个版本分别是1和2,目前1最新版本是1.2.8,而版本2早已经废弃了。http_proxy是利用Apache自带的mod_proxy模块使用代理技术来连接Tomcat。Ajp_proxy连接方式其实跟http_proxy方式一样,都是由mod_proxy所提供的功能。只需要把配置中的http://换成ajp://,同时连接的是Tomcat的AJP Connector所在的端口。

  相对于JK的连接方式,后两种的配置比较简单,灵活性方面也一点都不逊色,但稳定性不及JK这样久经考验,所以建议采用JK的连接方式。

  Apache+JK+Tomcat配置:

  使用到的两个配置文件分别是:httpd.conf和mod_jk.conf。其中httpd.conf是Apache服务器的配置文件,用来加载JK模块以及指定JK配置文件信息。mod_jk.conf是到Tomcat服务器的连接定义文件。

  【部署步骤】

  1.安装Apache服务器

  2.部署Tomcat

  3.将mod_jk.so拷贝到modules目录下

  4.修改httpd.conf和mod_jk.conf

  【适用场景】大量使用静态页面的应用系统。

  四、Apache和Tomcat集群

  对于并发要求很高的系统,要采取负载均衡的方式来分担Tomcat服务器的压力。负载均衡的实现大概有以下四种:

  第一是通过DNS,但只能简单的实现轮流分配,不能处理故障;

  第二是基于MSIIS,Windows2003server本身就带了负载均衡服务;

  第三是硬件方式,通过交换机功能或专门的负载均衡设备来实现;

  第四种是软件的方式,通过一台负载均衡服务器进行,上面安装软件。

  使用Apache Httpd Server做负载均衡器,Tomcat集群节点使用Tomcat就可以做到上述的第四种方式,这种方式比较灵活,成本相对较低,另外一个很大的优点就是可以根据应用情况和服务器的情况做一些灵活的配置。所以推荐使用Apache+Tomcat集群来实现负载均衡。

  采用Tomcat集群可以最大程度的发挥服务器的性能,可以在配置较高的服务器上部署多个Tomcat,也可以在多台服务器上分别部署Tomcat,Apache和Tomcat整合的方式还是JK方式。经过验证,系统对大用户量使用的响应方面,Apache+3Tomccat集群>Apache+2Tomcat集群>Apache集成Tomcat>单个Tomcat。并且采用Apache+多Tomcat集群的部署方式时,如果一个Tomcat出现宕机,系统可以继续使用,所以在硬件系统性能足够优越的情况下,需要尽量发挥软件的性能,可以采用增加Tomcat集群的方式。

  Apache+Tomcat集群的方式使用到得配置文件有httpd.conf、mod_jk.conf、workers.properties。其中mod_jk.conf是对JK信息的配置,包括JK的路径等,workers.properties配置文件是对Tomcat服务器的连接定义文件。

  Apache需要调整运行参数,这样才能构建一个适合相应网络环境的web服务。其中可进行的优化配置如下:

  1.设置MPM(Multi Processing Modules多道处理模块)。Thread Per Child,这个参数用于设置每个进程的线程数,在Windows环境下默认值是64,最大值是1920,建议设置为100-500之间,服务器性能高的话值大一些,反之小一些。Max Request Per Child表示每个子进程能够处理的最大请求数。这个参数的值更大程度上取决于服务器的内存,如果内存比较大的话可以设置为很大的参数,否则设置一个较小的值,建议值是3000。

  2.关闭DNS和名字解析Host name Look up soff。

  3.打开Use Canonical Name模块Use Canonical Name on。

  4.关闭多余模块一般来说,不需要加载的模块有,mod_include.so、mod_autoindex.so、mod_Access.so、mod_auth.so.

  5.打开Keep Alive支持

  Keep Alive on,Keep Alive Time out 15 Max Keep Alive Requests 1000。

  根据实际经验,通过Apache和Tomcat集群的方式提高系统性能的效果十分明显,这种方式可以最大化的利用硬件资源,通过多个Tomcat的处理来分担单Tomcat时的压力。

  【部署步骤】

  1.安装Apache服务器

  2.部署Tomcat集群,即多个相同的Tomcat

  3.将mod_jk.so拷贝到modules目录下

  4.修改httpd.conf、mod_jk.conf和workers.properties

  【适用场景】并发用户量及在线使用用户数量比较高的系统。

  要想Tomcat达到最优的效果,首先要使操作系统以及网络资源达到最优,并且最好使用高版本的JDK。对于有大量静态页面的系统,采用Apache集成Tomcat的方式,把静态页面交由Apache处理,动态部分交由Tomcat处理,能极大解放Tomcat的处理能力。使用ARP库也能极大的提高Tomcat对静态文件的处理能力。对于并发要求较高的系统,采用Apache加Tomcat集群的方式,将负载分别分担到多个Tomcat上,能很大的提高系统的性能,充分利用硬件资源。同时需要对Tomcat自身进行优化,包括增大内存、调节并发线程数等。

赞(15)
踩(4)
分享到:
华为认证网络工程师 HCIE直播课视频教程