• Tomcat安装与配置


     

    1. 安装Tomcat

    到官网下载http://tomcat.apache.org/

    把下载文件复制到指定,并解压,即可使用

    2. 配置说明

    目录说明

    文件夹

    说明

    bin

    存放Tomcat启动、停止服务程序以及一些其他脚本程序

    conf

    存放Tomcat服务器的各种配置文件,最主要server.xml

    lib

    存放Tomcat服务器支撑jar包

    logs

    存放日志文件

    temp

    存放临时文件

    webapps

    web应用所在目录,外界访问web资源的存放目录

    work

    Tomcat工作目录,默认情况下把编译JSP文件生成的servlet类文件放于此目录下

    conf下文件说明

    文件

    说明

    server.xml

    Tomcat 服务的主要配置文件

    catalina.properties

    JVM参数、系统属性等

    catalina.policy

    Tomcat的权限控制

    web.xml

    默认web配置文件

    tomcat-users.xml

    Tomcat 认证配置文件

    logging.properties

    Log 配置文件

    server.xml主要配置说明

    元素名

    属性

    解释

    server

    port

    指定一个端口,这个端口负责监听关闭tomcat 的请求

    shutdown

    指定向端口发送的命令字符串(需要自行修改)

    Connector

    port

    指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求

    minProcessors

    服务器启动时创建的处理请求的线程数

    maxProcessors

    最大可以创建的处理请求的线程数

    enableLookups

    调用request.getRemoteHost() 时是否通过DNS查询主机名

    acceptCount

    指定可以放到处理队列中的请求数,超过这个数的请求将不予处理

    connectionTimeout

    指定超时的时间数( 以毫秒为单位)

    3. 优化和加固Tomcat

    屏蔽 AJP

    注释或者删除server.xml中的 Connector节点

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    删除webapps下文件 

    删除webapps下原有所有文件

    隐藏版本 

    在Connector节点增加server属性配置

    配置shutdown端口 

    <Serverport="未被占用的端口" shutdown="较为复杂的字符串">

    启动线程池

    v Service节点下增加Executor节点(默认下为注释状态,打开后调整即可):

    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="1000" minSpareThreads="20" maxIdleTime="60000" maxQueueSize="100"/>

    v Connector节点调整,:

    增加 executor="tomcatThreadPool"

    关闭反向查询

    Connector节点增加/调整 enableLookups ="false"

    使用NIO模式

    Connector节点增加/调整 protocol="org.apache.coyote.http11.Http11Nio2Protocol"

    优化JVM

    参考网址:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html

    配置项

    说明

    -server

     启用jdk 的 server 版

    -Xmx

    最大堆内存,建议1024M或2048M

    -Xms

    最小堆内存,建议设置成和-Xmx一致

    -Xss

    线程栈大小,默认1M,推荐256K

    -XX:+AggressiveOpts

    加快编译

    -XX:+UseBiasedLocking

    锁机制的性能改善

    -XX:+DisableExplicitGC

    关闭System.gc()

    -XX:MaxTenuringThreshold

    垃圾最大年龄

    -XX:+UseConcMarkSweepGC

    使用CMS内存收集

    -XX:+UseParNewGC

    设置年轻代为并行收集

    -XX:+CMSParallelRemarkEnabled

    降低标记停顿

    -XX+UseCMSCompactAtFullCollection

    在FULL GC的时候, 对年老代的压缩

    -XX:LargePageSizeInBytes

    内存页的大小不可设置过大, 会影响Perm的大小

    -XX:+UseFastAccessorMethods

    原始类型的快速优化

    -XX:+UseCMSInitiatingOccupancyOnly

    使用手动定义初始化定义开始CMS收集

    打开 Tomcat路径in catalina.sh,在最顶部加入,黄色部分根据实际调整:

    JAVA_OPTS="-server -Xms1024M -Xmx1024M -Xss256K -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled  -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true"

    配置实例

    <Connector port="8080"

            protocol="org.apache.coyote.http11.Http11NioProtocol"

            maxHttpHeaderSize="8192"

            executor="tomcatThreadPool"

            enableLookups="false"

            connectionTimeout="20000"

            URIEncoding="utf-8"

            acceptCount="400"

            acceptorThreadCount="2"

            redirectPort="8443" server="tomcat 1.0.0" />

  • 相关阅读:
    观察者模式(Observer)
    怎样解决Java Web项目更改项目名后报错
    MAVEN最佳实践:模块划分
    java.lang.OutOfMemoryError: PermGen space及其解决方法
    以Windows服务方式启动MySQL,并将其默认编码设置为UTF-8
    ubuntu 12.04和Windows 7双系统的安装方法
    允许ubuntu下mysql远程连接
    Linux 系统目录介绍
    SVN中图标符号的含义
    简单介绍Linux下安装Tomcat的步骤
  • 原文地址:https://www.cnblogs.com/dengbingbing/p/12330493.html
Copyright © 2020-2023  润新知