Tomcat笔记

安装
wget https://mirrors.huaweicloud.com/apache/tomcat/tomcat-7/v7.0.96/bin/apache-tomcat-7.0.96.tar.gz
tar zxvf apache-tomcat-7.0.96.tar.gz
cd apache-tomcat-7.0.96/bin
./startup.sh
配置文件

8005端口是关闭tomcat进程所用。当执行shutdown.sh关闭tomcat时就是连接8005端口执行“SHUTDOWN”命令--由此,我们直接telnet8005端口执行“SHUTDOWN”也可以成功关闭tomcat.

<Server port="8005" shutdown="SHUTDOWN">

由于我们通常使用 kill -9 pid, 改为

<Server port="-1" shutdown="SHUTDOWN">

tomcat7 默认使用bio,现修改为 nio

<Connector port="8080" protocol="HTTP/1.1"

改为

<Connector executor="tomcatThreadPool" port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"

8009:apache httpd 反向代理tomcat时就可以使用使用ajp协议反向代理到该端口由于我们使用 Nginx 代理 tomcat,所以注释掉

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

改为

<!-- Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->
Tomcat 日志优化

默认情况下,Tomcat会产生这些日志

catalina.2019-08-16.log	#tomcat运行的一些日志,这些日志还会输出到catalina.out,没用
catalina.out #tomcat的标准输出(stdout)和标准出错(stderr),非常重要,保留
host-manager.2019-08-16.log #虚拟主机日志,没用
localhost.2019-08-16.log #程序异常没有被捕获的时候抛出的地方,如内存溢出,比较重要,保留
localhost_access_log.2019-08-16.txt #tomcat访问日志记录,没用
manager.2019-08-16.log # 管理日志,没用

日志级别

SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)

以 catalina.out 为例:

设置日志级别

1catalina.org.apache.juli.FileHandler.level = FINE

禁用日志

1catalina.org.apache.juli.FileHandler.level = OFF

输出所有

1catalina.org.apache.juli.FileHandler.level = ALL

以下为 Tomcat7 的 logging.properties 例子

[root@tomcat1 conf]# egrep -v "^#|^$" logging.properties
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
1catalina.org.apache.juli.FileHandler.encoding = UTF-8
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
2localhost.org.apache.juli.FileHandler.encoding = UTF-8
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.ConsoleHandler.encoding = UTF-8

关闭 localhost_access_log.2019-08-16.txt,修改 server.xml

        <!-- Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" /> -->

效果如下:

catalina.2019-09-06.log
localhost.2019-09-07.log
catalina.out

日志处理,由于catalina.out日志时间长了会变得很大,需要定时切割。

这里我们使用 lograte 工具

[root@tomcat1 logrotate.d]# cat live
/data/tomcat/live/logs/catalina.out {
daily
dateext
rotate 3
missingok
copytruncate
compress
}

注释:

daily #每天进行

dateext #每天执行一次,同时转储旧日志时用日期格式"YYMMDD"代替简单的数字作为标记

rotate 3 #只保留3个副本

missingok #如果要轮转的文件丢失了,继续轮转而不报错

copytruncate #创建新的catalina.out副本后,截断源catalina.out文件

compress #压缩

Tomcat 7 简单定制的更多相关文章

  1. tomcat的简单安装及配置

    实验系统:CentOS 6.6_x86_64 实验前提:防火墙和selinux都关闭 实验软件:apache-tomcat-8.0.24 jdk-8u60-linux-x64 jeecms-v6 一. ...

  2. Tomcat的简单归纳总结

    2017年08月09日 12:39:23 大道之简 阅读数:1072    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/HcJsJqJSSM/ar ...

  3. 【Python044--魔法方法:简单定制】

    一.简单定制 基本要求: -- 定制一个计时器的类 -- start和stop代表开始计时和停止计时 -- 假设计时器对象t1,print(t1)和直接调用t1均显示结果 -- 当计时器未启动或停止计 ...

  4. ubuntu下启动和关闭tomcat的简单方法

    在ubuntu下面,我们安装tomcat可以有两种方式[1]用aptitude安装aptitude install tomcat6 [2]免安装版从apache tomcat 网站下载apache-t ...

  5. Android中Tomcat的简单配置和使用

    因为学Android已经有一段时间了,但是在学校,服务器方面是个短板啊,没有专门的服务器拿给我们学生练手,所以只有自己找办法了.当然,Tomcat就是不二的选择了. 在网上看了看资料,还是觉得自己记录 ...

  6. Tomcat服务器简单测试jsp文件和html文件

    在tomcat里面的webapps文件夹下面新建一个test文件, 写一个test.html的文件,一个test.jsp的文件,两个文件的内容全是:2+2=<%=2+2%> 重新启动Tom ...

  7. 内嵌tomcat最简单用法

    maven项目引入内嵌tomcat依赖 <dependency> <groupId>org.apache.tomcat.embed</groupId> <ar ...

  8. Windows下nginx+tomcat实现简单的负载均衡

    Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请 ...

  9. tomcat的简单配置与适用默认的web应用

    指定tomcat端口: server.xml: <Connector port="8080" protocol="HTTP/1.1" connection ...

随机推荐

  1. vue项目在(windowServer)nginx上的部署

    (一) 本地部署. 1.下载phpStudy (http://phpstudy.php.cn/) 2.安装到自己指定盘根目录的文件夹目录,安装完后会用到. 3.运行phpStusy可能报错,需要下载安 ...

  2. 【Linux】CentOS7安装mysql5.7

    官网下载地址 ​ https://dev.mysql.com/downloads/file/?id=471503 ​ 本文所用MySQL版本为5.7.19; 上传包 ​ 将mysql-5.7.19-1 ...

  3. 3-3 man手册介绍

    man手册介绍 内容表示的意义: 各部分功能说明: SECTION: name:命令的名称及功能描述: SYNOPSIS:命令使用格式摘要: DESCRIPTION:详细描述信息: OPTIONS:选 ...

  4. 架构模式: 客户端 UI 构建

    架构模式: 客户端 UI 构建 上下文 您已应用微服务架构模式.服务由业务能力/面向子域的团队开发,这些团队也负责用户体验.一些UI屏幕/页面显示来自多个服务的数据.例如,考虑亚马逊风格的产品详细信息 ...

  5. C语言递归之求根到叶节点数字之和

    题目描述 给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字. 例如,从根到叶子节点路径 1->2->3 代表数字 123. 计算从根到叶子节点 ...

  6. SQuirreL连接Phoenix报java.util.concurrent.TimeoutException

    1.表象 java.util.concurrent.TimeoutException at java.util.concurrent.FutureTask.get(FutureTask.java:20 ...

  7. python3正则表达式详细用法示例

    转载自:https://www.runoob.com/python3/python3-reg-expressions.html

  8. Linux企业面试题(一)

    一.如何过滤出已知当前目录dongdaxia中的所有一级目录(提示:不包含dongdaxia目录下面目录的子目录及隐藏目录,即只能是一级目录)? 1. 过滤以“d”开头的 2.查看以/结尾的目录 3. ...

  9. 21.根据hive绑定数据统计计算保存到hive表中

    创建upflow表 create external table mydb2.upflow (ip string,sum string) row format delimited fields term ...

  10. 19.通过MAPREDUCE 把收集数据进行清洗

    在eclipse软件里创建一个maven项目 jdk要换成本地安装的1.8版本的 加载pom.xml文件 <project xmlns="http://maven.apache.org ...