加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Tomcat安装、设置、优化及负载平衡详解

发布时间:2018-09-15 03:21:06 所属栏目:业界 来源:rocomp
导读:9月15日技能沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖切磋精准运维! 一、常见JavaWeb处事器 1、WebLogic:是BEA公司的产物、WebSphereAS:是IBM公司的产物、JBossAS:红帽公司的产物,可以自行相识 2、Tomcat处事器:Sun公司在推出的小型Servlet/

在/conf/server.xml文件的之间插手代码

  1. <Contextpath=""docBase="C:tomcat7webappsmyapp"reloadable="true"debug="0"></Context> 
  2. <!-- 
  3. docBase改为本身必要的项目路径 
  4. 假如成立了Apache和tomcat集群,Apache server 的默认端口是80 ,IE会见的要领只需输入:http://localhost,就可以自动定位到xx工程下面去 
  5. --> 

要领二:

将tomcat安装目次下的ROOT下的全部文件删除,换本钱身项目标文件,此法有点暴力。

要领三:

Tomcat5.0以下版本在C:/Tomcat/conf/Catalina/localhost目次下会自动天生了一个ROOT.Xml,可是5.0以上版本不再天生此文件。

以是可以新建个ROOT.xml,在内里插手如下代码:

  1. <?Xml version='1.0' encoding='utf-8'?> 
  2. <ContextcrossContext="true"docBase="C:tomcat7webappsmyapp"path=""reloadable="true"> 
  3. </Context> 
  4. <!--可是我本身在7.0版本上测试仿佛未乐成,各人可以本身试试--> 

9、Context元素的属性

path:指定会见该Web应用的URL进口

docBase:指定Web应用的文件路径,可以写绝对路径,也可以写相对付appBase属性的相对路径

className:指定实现Context组件的Java类的名字,这个类必需实现org.apache.catalina.Contex接口,该属性默认值为org.apache.catalina.core.StandardContext(不提议各人窜改)

reloadable:假如为true,Tomcat处事器在运行状态下回监督在WEB-INF/classes和WEB-INF/lib目次下的class文件的窜改,以及监督Web应用的WEB-INF/web.xml文件的窜改,假如检测到有更新,处事器会自动更新加载web应用。

其默认值为false。在开拓和调试阶段,将其改为true,一样平常像Eclipse等开拓情形城市默认改为true。在正式宣布阶段,应将其该为false,可以低落Tomcat的运行负荷,进步Tomcat的运行机能

在一样平常环境下,元素城市行使默认的尺度Context组件,即className属性回收默认值org.apache.catalina.core.StandardContext,它除了拥有上面先容到的属性外,尚有自身专有的属性:

  • cachingAllowed:是否应承启用静态资源(HTML、图片、声音等)的缓存。默认值为true。
  • cacheMaxSize:配置静态资源缓存的最大值,单元为K。
  • workDir:指定Web应用的事变目次。
  • uppackWAR:假如为true,会把war文件睁开为开放目次后再运行。为false,直接运行war文件。默认值为true。

10、web.xml文件

该文件必需放在/WEB-INF目次下,可是从7.0版本开始,Tomcat可以不行使web.xml文件,而是行使注解方法。

三、Tomcat的优化

1、内存行使设置

Tomcat是依靠于JVM的,以是Tomcat的行使内存设置实质上是JVM的内存设置。

在/bin目次下的catalina.bat可以直接通过Tomcat配置JVM内存参数,windows下打开catalina.bat文件,在或许中间的位置,找到

  1. set "JAVA_OPTS=%JAVA_OPT% -server -Xms2048m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -Djava.awt.headless=true" 

通过内存配置充实操作处事器内存

  • -server:模式启动应用慢,可是极洪流平进步运行机能
  • -Xms2048m -Xmx2048m:配置的是堆内存

java8开始,PermSize被MetaspaceSize取代,MetaspaceSize共享heap,不会再有java.lang.OutOfMemoryError:PermGen space,可以不配置

  • Headless=true:合用于Linux体系,与图形操纵有关,如天生验证码寄义是当前的是无表现器的处事器,应用中假如获取体系表现有关的参数会抛出非常,windows体系可不消配置

可通过jmap -heap process_id查察配置是否乐成

2、最大毗连数设置(并发手段)

在/conf/server.xml里举办设置

在属性中将protocol属性改为

  1. "org.apache.coyote.http11.Http11NioProtocol", 

NIO模子的服从更高

插手

  1. maxThreads="500"  
  2. //当前可以同时处理赏罚的最大用户会见数 
  3.  
  4. minSpareThreads="100"  
  5. //最小空闲线程毗连数,用于优化线程池 
  6.  
  7. maxSpareThreads="200" 
  8.  
  9. acceptCount="200"  
  10. //当全部的线程以分派,如故应承毗连进来,可是出于守候状态的用户数。 
  11. //守候线程数+事变线程数=总的可最大毗连数,假如高出此数, 
  12. //新的毗连将不会被接管,就会发生一个http错误 
  13.  
  14. enableLookups="false" 
  15. //是否应承DNS反查,假如为true,request.getRemoteHost会执行DNS查找,反向理会ip对应域名或主机名, 
  16. //当没有这样必要的时辰,可以将这个成果封锁,在必然水平上进步了Tomcat处事器的机能 

四、负载平衡设置

负载平衡是进步应用负载量和容错的有用本领,可以团结Nginxs与Tomcat实现,Nginx是一款机能优秀的反向署理处事器。

1、负载平衡设置实现

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读