Tomcat性能调优

1、简介

1. 1  Tomcat 是什么?

  tomcat是市场比较流行的WEB中间件 ,tomcat是配合Java运行而生容器;javascript

1.2  Apache 和tomcate的区别

  1.  Apache属于web服务器,Tomcat 属于java服务器
  2.  Tomcat 是用来运行java程序的。Apache没法运行java程序
  3.   两者可单独使用,也可配合使用。Tomcat 处理java服务,Apache 处理偏静态服务;

2、监控

2.1 自带的Server Status监控

  

  1.  tomcat 自带监控Server Status以下图:

  

  2.初始化的tomcat是进不了 Server Status;须要修改配置文件css

  3.tomcat配置文件 都在conf目录里面 如图 找到 tomcat-users.xmlhtml

  <role rolename="manager-gui"/>java

  <user username="admin" password="123123" roles="manager-gui"/>web

  

  

  4.配置完后 访问 点击页面的 Server Status ,在弹框中输入你配置的用户名和密码(admin/123123)apache

 

   

  5.进去监控画面浏览器

  注:1)Server Status监控界面分jvm显示区域  /ajp-bio-8009 显示区域 / http-nio-8080显示区域;tomcat

    2)JVM区域参数含义之后JVM篇在集中说明;服务器

    3)apache与tomcat的连接方式分两种不同的方式有不同的性能 默认是bio的形式app

  6.监控中的参数说明:

  Max threads :最大线程数
  Current thread count:当前线程数
  Current thread busy:当前正在运行的线程/正在处理的线程

  Max processing time: 246 ms 单个请求最大处理时间 单位毫秒
  Processing time: 总处理时间
  Request count: 有多少次请求
  Error count: 多少失败的

  Bytes received: 接受到的数据量
  Bytes sent: 发送出去的数据量

2.2 利用LoadRunner进行打点监控 --不多用

  待我亲自实验好了往后补上

3、参数调优

3.1参数配置调优

  注:全部的参数调优都在这个文件 /conf/server.xml 基本上的参数调优都在 -- <Connector port="8080" protocol  这个标签里面;以下图

3.1.1 连接方式优化 默认方式的连接方式性能很低
  将Connector port="8080" protocol="HTTP/1.1"
  中的protocol值改为 "org.apache.coyote.http11.Http11Protocol" --org.apache.coyote.http11.Http11NioProtocol
  效果如图:

3.1.2 URIEncoding="UTF-8"这个参数和性能无关;

  这个配置解决tomcat的健壮性,能够帮助tomcat解析含有中文的url

3.1.3 minSpareThreads="25" 这个参数含义:启动tomcat初始化的线程数;

  注:tomcat里面没有 maxSpareThreads这个参数;

3.1.4 enableLookups="false" 这个参数含义是 是否进行域名反查询;

  通常状况下是不须要进行域名反查询的;由于进行域名反查询耗费必定的时间,及影响性能;

3.1.5 useURIValidationHack="false" 这个参数含义:对URL是否进行规范性的检查;

  大流量话作检查会影响性能,建议为false;

3.1.6 connectionTimeout="20000" 连接的超时时间,这单位是ms;

  调节按流量大小调 参考值30000

3.1.7 maxThreads="50" 表明服务器最大请求数量 默认是200;(最重要的调优参数)

  流量高的须要调大,不能过高,也不能过低;调节能够根据监控的值来调节
  Max threads: 200 Current thread count: 10 Current thread busy: 

3.1.8 acceptCount="300" 能够理解为 队列; 默认是100 ;(最重要的调优参数)

  a.当请求达到acceptCount这个值 ,就会报‘拒绝连接’

  b.当请求数在 大于 maxThreads 小于 acceptCount ,请求会在acceptCount里面。

3.1.9 压缩调优 (如下参数是成队出现的)
  compression="on"                                    打开压缩
  compressionMinSize="2048"                             小于2048的不压缩
  noCompressionUserAgents="gozilla,traviata"                      对于哪些浏览器不进行压缩
  compressableMimeType="text/html,text/xml,text/css,text/plain,application/javascript"    支持压缩的文件类型

 3.2 JVM调优 

   JVM调优内容较多往后单独说明

4、tomcat优化方向(非自身参数配置)

  4.1 硬件配置 ...须要大内存,由于Java程序吃内存

  4.2 选择 合适的jdk版本

  4.3 作负载均衡

 

 

 

 

 

@版权全部禁止非法转载!!!!!

相关文章
相关标签/搜索