Tomcat 部署及优化

文章目录

  • 一、Tomcat 安装部署
    • 1.1、Tomcat 简介
    • 1.2、Tomcat 核心组件
    • 1.3、Tomcat 处理请求过程
    • 1.4、Tomcat 部署步骤
      • 1.4.1、下载并安装jdk
      • 1.4.2、安装并启动Tomcat
      • 1.4.3、优化启动速度
  • 二、 虚拟主机配置
    • 2.1、 虚拟主机概述
    • 2.2 、创建51xit和52xit项目目录和文件
    • 2.3、修改Tomcat主配置文件
    • 2.4、测试
  • 三、Tomcat 优化

一、Tomcat 安装部署

1.1、Tomcat 简介

免费的、开放源代码的Web应用服务器

Apache软件基金会( Apache Software Foundation)Jakarta项目中的一个核心项目

由 Apache、Sun和一些公司及个人共同开发而成

深受Java爱好者的喜爱,并得到部分软件开发商的认可

是目前比较流行的Web应用服务器

1.2、Tomcat 核心组件

Tomcat 部署及优化_第1张图片
核心组件:
●Web容器:完成Web服务器的功能
●Servlet容器:名字为catalina,用于处理Servlet代码
●JSP容器:用于将JSP动态网页翻译成Servlet代码

1.3、Tomcat 处理请求过程

Tomcat 部署及优化_第2张图片
1.用户在浏览器中输入网址localhost:8080/test/index.jsp,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/1.1 Connector获得;

2.Connector把该请求交给它所在的Service的Engine(Container)来处理,并等待Engine的回应;

3.Engine获得请求localhost/test/index.jsp,匹配所有的虚拟主机Host;

4.Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机),名为localhost的Host获得请求/test/index.jsp,匹配它所拥有的所有Context。Host匹配到路径为/test的Context(如果匹配不到就把该请求交给路径名为“ ”的Context去处理);

5.path=“/test”的Context获得请求/index.jsp,在它的mapping table中寻找出对应的Servlet。Context匹配到URL Pattern为*.jsp的Servlet,对应于JspServlet类;

6.构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet()或doPost(),执行业务逻辑、数据存储等;

7.Context把执行完之后的HttpServletResponse对象返回给Host;

8.Host把HttpServletResponse对象返回给Engine;

9.Engine把HttpServletResponse对象返回Connector;

10.Connector把HttpServletResponse对象返回给客户Browser

1.4、Tomcat 部署步骤

1.4.1、下载并安装jdk

JDK是Java语言的软件开发工具包
JDK是Tomcat运行的必要环境
Tomcat 部署及优化_第3张图片
下载软件包后,将jdk软件包上传到/root下,安装jdk

[root@localhost ~]# rpm -ivh jdk-8u201-linux-x64.rpm 
[root@localhost ~]# cd /usr/java/jdk1.8.0_201-amd64/
[root@localhost jdk1.8.0_201-amd64]# ll
[root@localhost jdk1.8.0_201-amd64]# vi /etc/profile
#最后一行添加#
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
[root@localhost jdk1.8.0_201-amd64]# source /etc/profile
[root@localhost jdk1.8.0_201-amd64]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

1.4.2、安装并启动Tomcat

将安装包上传到/root下

[root@localhost ~]# tar xf apache-tomcat-9.0.16.tar.gz 
[root@localhost ~]# mv apache-tomcat-9.0.16 /usr/local/tomcat
[root@localhost ~]# /usr/local/tomcat/bin/startup.sh

浏览器中输入:http://20.0.0.25:8080
Tomcat 部署及优化_第4张图片

1.4.3、优化启动速度

[root@localhost ~]# vi /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security 
securerandom.source=file:/dev/urandom  ##修改
[root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh   #关闭
[root@localhost ~]# /usr/local/tomcat/bin/startup.sh    #开启
[root@localhost ~]# ll /usr/local/tomcat/
total 124
drwxr-x--- 2 root root  4096 Sep  8 03:31 bin
#存放启动和关闭Tomcat的脚本文件,比较常用的是catalina.sh,startup.sh,shutdown.sh三个文件#
-rw-r----- 1 root root 19203 Feb  5  2019 BUILDING.txt
drwx------ 3 root root   254 Sep  8 03:32 conf
#存放Tomcat服务器的各种配置文件,比较常用的是server.xml,contest.xml,tomcat-users.xml,web.xml四个文件#
-rw-r----- 1 root root  6095 Feb  5  2019 CONTRIBUTING.md
drwxr-x--- 2 root root  4096 Sep  8 03:31 lib
#存放Tomcat服务器的jar包,一般不做任何改动,除非连接第三方服务,比如redis,那就需要相应的jar包#
-rw-r----- 1 root root 57092 Feb  5  2019 LICENSE
drwxr-x--- 2 root root   197 Sep  8 03:32 logs  
#存放Tomcat日志#
-rw-r----- 1 root root  2333 Feb  5  2019 NOTICE
-rw-r----- 1 root root  3255 Feb  5  2019 README.md
-rw-r----- 1 root root  6854 Feb  5  2019 RELEASE-NOTES
-rw-r----- 1 root root 16262 Feb  5  2019 RUNNING.txt
drwxr-x--- 2 root root    30 Sep  8 03:31 temp 
#存放Tomcat运行时产生的文件#
drwxr-x--- 7 root root    81 Feb  5  2019 webapps
#存放项目资源的目录#
drwxr-x--- 3 root root    22 Sep  8 03:32 work 
#Tomcat工作目录,一般清除Tomcat缓存的时候会用到#

二、 虚拟主机配置

2.1、 虚拟主机概述

有多个项目同时运行时,一台服务器不建议运行多个Tomcat服务,需要配置虚拟主机
通过两个域名访问到不同的项目内容

步骤:
●创建51xit和52xit项目目录和文件
●修改Tomcat主配置文件
●重启Tomcat服务
●访问测试

2.2 、创建51xit和52xit项目目录和文件

[root@localhost ~]# mkdir /usr/local/tomcat/webapps/51xit
[root@localhost ~]# echo "This is 51xit page!" > /usr/local/tomcat/webapps/51xit/index.jsp
[root@localhost ~]# mkdir /usr/local/tomcat/webapps/52xit
[root@localhost ~]# echo "This is 52xit page!" > /usr/local/tomcat/webapps/52xit/inde

2.3、修改Tomcat主配置文件

[root@localhost ~]# vi /usr/local/tomcat/conf/server.xml
<Host name="www.51xit.top"  appBase="/usr/local/tomcat/webapps"
            unpackWARs="true" autoDeploy="true" xmlValidation="false"
            xmlNamespaceAware="false">
              <Context docBase="/usr/local/tomcat/webapps/51xit"
                path="" reloadable="true" />
      </Host>
    
      <Host name="www.52xit.top"  appBase="/usr/local/tomcat/webapps"
            unpackWARs="true" autoDeploy="true" xmlValidation="false"
            xmlNamespaceAware="false">
              <Context docBase="/usr/local/tomcat/webapps/52xit"
                path="" reloadable="true" />
      </Host>
[root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh 
[root@localhost ~]# /usr/local/tomcat/bin/startup.sh 

2.4、测试

客户端hosts文件中绑定两个域名
◆20.0.0.25 www.51xit.top www.52xit.top
浏览器输入:
●http://www.51xit.top:8080
●http://www.52xit.top:8080
Tomcat 部署及优化_第5张图片

Tomcat 部署及优化_第6张图片

三、Tomcat 优化

操作系统优化(内核参数优化)

Tomcat配置文件参数优化

Java虚拟机(JVM)调优
Tomcat 部署及优化_第7张图片
优化前后可用jmeter压测工具进行压测

你可能感兴趣的:(Web服务器,实验,理论,tomcat)