tomcat简介
tomcat是一款开源产品,它是一个web服务器,但他只可以支持java开发部署产品上线。
它的端口号默认是8080,和nginx或者是apache并不冲突。
tomcat安装
tomcat和别的服务器不同,它可以直接解压就进行启动,但前提是安装了依赖包。
jdk是一个重要的依赖包,它不需要安装,但是需要将他添加进环境变量中
下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
下载的包直接拖入linux服务系统中,然后解压即可,这边拖入了/usr/local中
解压过后可以直接进入配置文件中,在此之前,可以更改一个名字,以供环境变量好写
mv jdk1.8.0_221/ jdk
如果下载的包是rpm格式的,那么可以直接进行 rpm -ivh jdk-8u171-linux-x64.rpm 安装命令
添加环境变量
进入/etc/profile环境变量,在尾端输入以下内容:
export JAVA_HOME=/usr/local/jdk #第一行为指明jdk安装目录的存放路径
export CLASSPATH=
J
A
V
A
H
O
M
E
/
l
i
b
/
t
o
o
l
s
.
j
a
r
:
JAVA_HOME/lib/tools.jar:
JAVAHOME/lib/tools.jar:JAVA_HOME/lib/dt.jar #第二行为指明jdk里 的/lib中的tools.jar和dt.jar文件
export PATH=
J
A
V
A
H
O
M
E
/
b
i
n
:
JAVA_HOME/bin:
JAVAHOME/bin:PATH
soruce /etc/profile 重启一下文件
解压tomcat压缩包,并且重命名
tar -xf apache-tomcat-8.5.16.tar.gz
mv apache-tomcat-8.5.16 tomcat
rm -rf apache-tomcat-8.5.16.tar.gz
java -version为查看Java支持版本号,我们可以通过此命令来查看java是否安装成功。
而后,可以直接进入tomcat文件夹中的bin目录中使用./startup.sh 来启动服务器。
它默认是8080版本,所以可以兼容nginx或者apache,因为他们的端口号是80。此刻,已经可以直接通过ip地址+端口号来进行访问。
工作目录介绍
tomcat的工作目录:
bin 启停运行配置文件存放点
conf tomcat各种配置文件
lib tomcat的Java库和包存放点
logs tomcat的日志监控存放点
temp tomcat运行时产生的文件,可把他们视作临时缓存
webapps tomcat的默认网页部署,一般就是将java部署到此目录上
work tomcat工作目录
tomcat虚拟主机配置
虚拟主机配置相对来说比较麻烦,主要就是进入配置文件中添加新的模块来识别虚拟主机。
进入webapps来创建目录,其中分别为cy和hs,使用echo “hello mastar ! this is hs” > index.jsp来创建一个简单的文件
进入配置文件中进行配置vim /usr/local/tomcat/conf/server.xml
注意:该模块一定要放置在之上,不然的话启动会报错
而后,进入bin目录下,重启一下脚本,即停止脚本之后重启:
如果出现报错,可以尝试进行source /etc/profile 重新刷新一下环境配置文件,而后分别进入linux的/etc/hosts和windows的C:\Windows\System32\drivers\etc来输入相应的域名,访问网页的时候输入域名:8080即可进行访问。
日志文件查看
我们可以通过查看日志,来查询启停是否成功
主要是查询ERROR或者filled等失败字眼,如果失败的话,就需要去查看相关配置是否有格式语法错误或者冲突。
tomcat优化
tomcat优化主要针对三点:
1、操作系统优化(内核参数优化)
2、Tomcat 配置文件参数优化
3、Java 虚拟机(JVM)调优
第一种是在配置虚拟主机或者主机的时候进行的vim /usr/local/tomcat/conf/server.xml,如果对代码进行了动静分离处理,静态页面和图片等数据就不需要做Tomcat 处理,也就不需要在Tomcat 中配置压缩,因为如果真的做了系统优化,进行测试的时候说不定会比没有配置优化还要卡顿。
第二种则是使用测试工具来进行的:jmeter压测工具,该工具是在windows进行的,它同样需要windows系统安装了jdk工具,配置好工具之后,就可以进行相应的测试,但是这主要是测试的工作,只需要了解即可。
大致流程为:安装jdk工具,将jdk工具加入windows的环境变量中,加入成功之后就可以使用jmeter工具包来进行工作。
https://blog.csdn.net/qq_37606901/article/details/89736684详细说明
第三种才是重中之重,我们需要手动去更改他们的参数,因为有可能是因为开发的原因,也有可能是因为系统本身的原因,一旦部署了一个网页,物理内存会一瞬间暴涨,运维的工作就是找出他们的错误报告,和调整系统本身服务器的设置,从而达到网页均衡的工作。
目录防止在tomcat的bin目录下的catalina.sh文件中:
Xmx Java Heap最大值,默认值为物理内存的1/4;
-Xms Java Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;
-Xmn Java Heap Young区大小,不熟悉最好保留默认值;
-Xss 每个线程的Stack大小,不熟悉最好保留默认值;
-XX:PermSize:设定内存的永久保存区域;
-XX:MaxPermSize:设定最大内存的永久保存区域;
-XX:PermSize:设定内存的永久保存区域;
-XX:NewSize:设置JVM堆的‘新生代’的默认大小;
-XX:MaxNewSize:设置JVM堆的‘新生代’的最大大小;
一般只需要加上这段话在配置文件中即可,但是还是要看企业的需求以及服务器本身配置需求:
JAVA_OPTS="-server -Xms4096m -Xmx4096m -XX:PermSize=2048m
-XX:MaxPermSize=2048m"
打个比方,如果你的服务器只有4G,那么4096就是最大的,那么上述的配置则表示着将该服务器的内存直接都交予tomcat中,那这样别的网页部署以及别的服务端口都相当于没有多余的内存去启动,所以最多这台服务器能分配的内存就是2048也就是2g,需要给予够一定的空间内存分配给别的服务端口,需要自己去设置和构思。