Tomcat_java

一:tomcat简介

   1、简介

   Tomcat服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来
说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,
所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
    Tomcat的官网:http://tomcat.apache.org/

  2、目录介绍

目录:backup、bin、conf、lib、logs、temp、webapps、work、wtpwebapps。
文件:LICENSE、NOTICE、RELEASE-NOTES、RUNNING.txt。
    backup
        保存了一些配置文件,是在第一次运行了Tomcat服务器以后产生的。它是对服务器进行简单的备份日志。和conf文件下的内容几乎一样。
    bin
        主要用来存放Tomcat的命令,很多环境变量也在此处设置。
        startup.bat、shutdown.bat代表Windows系统下启动/关闭Tomcat的命令。startup.sh、shutdown.bat代表Linux下的启动/关闭Tomcat的命令。catalina可以设置Tomcat内存。
    conf
        存放tomcat服务器全局配置的各种文件。
        backup文件夹为它的备份。
        catalina目录下可以设置默认加载的项目。
        catalina文件可以设置tomcat服务器内存大小。
        context.xml可以用来配置数据源之类的东西。
        logging文件记录tomcat服务器运行的日志记录。
        server.xml可以设置域名、端口号、IP、请求的编码、默认加载的项目。
        web.xml可以设置tomcat服务器支持的文件类型。    
    lib
        存放Tomcat服务器所需要的所有Jar包。
    log
        存放Tomcat执行时的日志文件。清除此文件不会对Tomcat服务器产生影响。开始时此文件目录为空。只有运行了Tomcat才会在此目录下生成日志文件。
    temp
        存放Tomcat执行过程中产生的临时文件。清除此文件不会影响Tomcat服务器。
    webapps
        tomcat默认部署路径。目录用来存放应用程序,当Tomcat启动时会加载webapps目录下的应用程序。可以以war包、Jar包、普通文件夹三种形式发布应用。你也可以把应用程序
        存放在电脑磁盘的任意一个位置,但是在配置文件中要配置好,使其映射好。
    LICENSE、NOTICE、RELEASE-NOTES、RUNNING.txt
        Tomcat服务器的一些签证,运行,注意的信息。

二:tomcat配置

   1、添加VisualVM监视

--在tomcat的bin目录下catalina.sh文件头部添加如下参数:

CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=JMX_HOST"
CATALINA_OPTS="${CATALINA_OPTS} -Djavax.management.builder.initial="
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote=true"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.port=JMX_PORT"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.ssl=false"
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.authenticate=false"

三:tomcat知识点

  1、tomcat日志

日志配置文件:
    tomcat目录下的/conf/logging.properties。

日志等级:
    日志输出级别:SEVERE (最高级别) > WARNING > INFO > CONFIG > FINE > FINER(精心) > FINEST (所有内容,最低级别)

日志类型:
  五类日志 :catalina、localhost、manager、admin、host-manager
    catalina.out
        即标准输出和标准出错,所有输出到这两个位置的都会进入catalina.out,这里包含tomcat运行自己输出的日志以及应用里向console输出的日志。默认这个日志文件是不会进行自动切割
    的,我们需要借助其他工具进行切割(注意:catalina.out文件如果过大会影响)
    catalina.{yyyy-MM-dd}.log
        tomcat自己运行的一些日志,这些日志还会输出到catalina.out,但是应用向console输出的日志不会输出到catalina.{yyyy-MM-dd}.log,它是tomcat的启动和暂停时的运行日志。
    localhost.{yyyy-MM-dd}.log
        主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志,它也是包含tomcat的启动和暂停时的运行日志,但它没有catalina.2018-09-19.log 日志全。
    它只是记录了部分日志。
    localhost_access_log.2018-09-19.txt
        这个是访问tomcat的日志,请求时间和资源,状态码都有记录。
    host-manager.2018-09-19.log
        这个估计是放tomcat的自带的manager项目的日志信息的,未看到有什么重要的日志信息。
    manager.2018-09-19.log
        这个是tomcat manager项目专有的日志文件
        
日志文件切割:    
    tomcat的catalina.out文件是不会进行日志切割的,当这个文件大于2G时,会影响tomcat的运行。
    
    方法一:cronolog分割(不推荐)
        Linux 日志切割工具cronolog详解:https://blog.csdn.net/chenkeqin_2012/article/details/52670887
    方法一:使用.sh脚本(不推荐)
        略
    方法三:使用log4j
        1、在tomcat根目录下建立common/classes/log4j.properties,内容如下
            log4j.rootLogger=INFO, R 
            log4j.appender.R=org.apache.log4j.RollingFileAppender 
            log4j.appender.R.File=${catalina.home}/logs/tomcat.newlog  #设定日志文件名
            log4j.appender.R.MaxFileSize=100KB   #设定文件到100kb即分割
            log4j.appender.R.MaxBackupIndex=10   #设定日志文件保留的序号数
            log4j.appender.R.layout=org.apache.log4j.PatternLayout 
            log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
      2、在tomcat根目录下的common/lib下加入log4j.jar和commons-logging.jar
      3、重新启动tomcat即可。

四:tomcat应用实践

原文地址:https://www.cnblogs.com/chunxiaozhang/p/12659836.html