Tomcat 7 简单定制
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 "%r" %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 简单定制的更多相关文章
- tomcat的简单安装及配置
实验系统:CentOS 6.6_x86_64 实验前提:防火墙和selinux都关闭 实验软件:apache-tomcat-8.0.24 jdk-8u60-linux-x64 jeecms-v6 一. ...
- Tomcat的简单归纳总结
2017年08月09日 12:39:23 大道之简 阅读数:1072 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/HcJsJqJSSM/ar ...
- 【Python044--魔法方法:简单定制】
一.简单定制 基本要求: -- 定制一个计时器的类 -- start和stop代表开始计时和停止计时 -- 假设计时器对象t1,print(t1)和直接调用t1均显示结果 -- 当计时器未启动或停止计 ...
- ubuntu下启动和关闭tomcat的简单方法
在ubuntu下面,我们安装tomcat可以有两种方式[1]用aptitude安装aptitude install tomcat6 [2]免安装版从apache tomcat 网站下载apache-t ...
- Android中Tomcat的简单配置和使用
因为学Android已经有一段时间了,但是在学校,服务器方面是个短板啊,没有专门的服务器拿给我们学生练手,所以只有自己找办法了.当然,Tomcat就是不二的选择了. 在网上看了看资料,还是觉得自己记录 ...
- Tomcat服务器简单测试jsp文件和html文件
在tomcat里面的webapps文件夹下面新建一个test文件, 写一个test.html的文件,一个test.jsp的文件,两个文件的内容全是:2+2=<%=2+2%> 重新启动Tom ...
- 内嵌tomcat最简单用法
maven项目引入内嵌tomcat依赖 <dependency> <groupId>org.apache.tomcat.embed</groupId> <ar ...
- Windows下nginx+tomcat实现简单的负载均衡
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请 ...
- tomcat的简单配置与适用默认的web应用
指定tomcat端口: server.xml: <Connector port="8080" protocol="HTTP/1.1" connection ...
随机推荐
- vue父组件如何向子组件中传递数据?
原文地址 props传参 父组件: <template> <parent> <child :list="list"></child> ...
- Hibernate使用中防止SQL注入的几种方案
Hibernate使用中防止SQL注入的几种方案 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数 ...
- 【并行计算-CUDA开发】CUDA并行存储模型
CUDA并行存储模型 CUDA将CPU作为主机(Host),GPU作为设备(Device).一个系统中可以有一个主机和多个设备.CPU负责逻辑性强的事务处理和串行计算,GPU专注于执行高度线程化的并行 ...
- shell-变量,字符串,数组,注释,参数传递
Linux的Shell有很多种,常见的有Bourne Shell Bourne Again Shell C Shell K Shell Shell for Root 等,其中Bourne Again ...
- bzoj 4736: 温暖会指引我们前行 (LCT 维护最大生成树)
链接:https://www.lydsy.com/JudgeOnline/problem.php?id=4736 题面: 寒冬又一次肆虐了北国大地 无情的北风穿透了人们御寒的衣物 可怜虫们在冬夜中发出 ...
- [转帖]字符编码笔记:ASCII,Unicode 和 UTF-8
字符编码笔记:ASCII,Unicode 和 UTF-8 http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 转帖 ...
- SQLServer学习之表的操作
SQLServer学习之表的操作 关系数据库通常包含多个表.数据库实际上是表的集合,数据库的数据或者信息都是存储在表中的.表是对数据进行存储和操作的一种逻辑结构,每一个表都代表一个对用户意义的对象. ...
- P1003铺地毯
这道题是2011年提高组第一题,在洛谷被评为普及-.看到题目后直接写了一个纯模拟,结果第一次提交全部RE,后将数组开大,随即MLE.然后又去思索其余方法,采用先将每一个地毯的对角线存下来,然后i--看 ...
- 同一台服务器请求easyswoole的一个websocket接口报错
求助大神啊!file_get_contents报这个错:failed to open stream: Connection timed out换成curl又报这个错:couldn't connect ...
- 安装consul-client+registrator
安装registrator 下载镜像这里必须要注意:registrator的lastest版本已经2年没更新了,他的最新主板本是master,一定要注意,因为旧的版本无法发现跟自己不是同一个网络的容器 ...