这篇文章将为大家详细讲解有关Tomcat如何部署服务,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Tomcat概述
免费的、开放源代码的Web应用服务器
Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目
由Apache、Sun和一 些公司及个人共同开发而成
深受Java爱好者的喜爱,并得到部分软件开发商的认可
目前比较流行的Web应用服务器
Tomcat核心组件
Tomcat处理请求过程
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。
Tomcat目录详解
●bin
存放启动和关闭 Tomcat 的脚本文件,比较常用的是 catalina.sh、startup.sh、
shutdown.sh 三个文件
●conf
存放 Tomcat 服务器的各种配置文件,比较常用的是 server.xml、context.xml、
tomcat-users.xml、web.xml 四个文件。
●lib
存放 Tomcat 服务器的 jar 包,一般不作任何改动,除非连接第三方服务,比如 redis,
那就需要添加相对应的 jar 包
●logs
存放 Tomcat 日志
●temp
存放 Tomcat 运行时产生的文件
●webapps
存放项目资源的目录
●work
Tomcat 工作目录,一般清除 Tomcat 缓存的时候会使用到
Tomcat部署
在部署 Tomcat 之前必须安装好 jdk,因为 jdk 是 Tomcat 运行的必要环境。所有的源码包需要的请私信我。
先访问宿主机的共享目录,并进行挂载
[root@localhost ~]# smbclient -L //192.168.100.23/
Enter SAMBA\root's password:
OS=[Windows 10 Enterprise 17763] Server=[Windows 10 Enterprise 6.3]
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk 远程管理
C$ Disk 默认共享
D$ Disk 默认共享
E$ Disk 默认共享
F$ Disk 默认共享
G$ Disk 默认共享
IPC$ IPC 远程 IPC
LAMP Disk
LAMP-C7 Disk
LNMP Disk
share Disk
tomcat Disk
Users Disk
Connection to 192.168.100.23 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
NetBIOS over TCP disabled -- no workgroup available
[root@localhost ~]# mkdir /chen
[root@localhost ~]# mount.cifs //192.168.100.23/tomcat /chen/
Password for root@//192.168.100.23/tomcat:
[root@localhost ~]# cd /chen/
[root@localhost chen]# ls
12D18CFCD6599AFF0445766ACC4CA231C5025773.torrent apache-jmeter-5.1.zip jdk-8u201-linux-x64.rpm
apache-jmeter-5.1 apache-tomcat-9.0.16.tar.gz tomcat优化压测.jmx
安装jdk源码包,设置环境变量
[root@localhost chen]# rpm -ivh jdk-8u201-linux-x64.rpm
[root@localhost jdk1.8.0_201-amd64]# vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
#申明java的工作目录
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
#申明java类文件的位置
export PATH=$JAVA_HOME/bin:$PATH
#申明java环境变量
[root@localhost jdk1.8.0_201-amd64]# source /etc/profile
做软链接方便系统识别Tomcat的命令,开启服务
[root@localhost chen]# tar zxvf apache-tomcat-9.0.16.tar.gz -C /usr/local/
[root@localhost chen]# cd /usr/local/
[root@localhost local]# ls
apache-tomcat-9.0.16 bin etc games include lib lib64 libexec sbin share src
[root@localhost local]# mv apache-tomcat-9.0.16/ tomcat
[root@localhost local]# ls
bin etc games include lib lib64 libexec sbin share src tomcat
[root@localhost local]# cd tomcat/bin/
[root@localhost bin]# ls
bootstrap.jar ciphers.sh daemon.sh setclasspath.bat startup.sh version.bat
catalina.bat commons-daemon.jar digest.bat setclasspath.sh tomcat-juli.jar version.sh
catalina.sh commons-daemon-native.tar.gz digest.sh shutdown.bat tomcat-native.tar.gz
catalina-tasks.xml configtest.bat makebase.bat shutdown.sh tool-wrapper.bat
ciphers.bat configtest.sh makebase.sh startup.bat tool-wrapper.sh
[root@localhost bin]# ln -s /usr/local/tomcat/bin/startup.sh /usr/bin/
#创建tomcat启动脚本的软链接到系统目录中,方便系统识别
[root@localhost bin]# ln -s /usr/local/tomcat/bin/shutdown.up.sh /usr/bin/
#创建tomcat关闭脚本的软链接到系统目录中,方便系统识别
[root@localhost bin]# startup.sh #启动tomcat服务
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@localhost bin]# systemctl stop firewalld.service
[root@localhost bin]# setenforce 0
[root@localhost bin]# netstat -ntap | grep 8080
tcp6 0 0 :::8080 :::* LISTEN 80982/java
去测试一下Tomcat的网页
优化Tomcat启动时间
[root@localhost bin]# vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security
#修改java.security参数
securerandom.source=file:/dev/urandom
#检索到random参数条目,将random修改为urandom,以缩短启动时间
[root@localhost bin]# startup.sh #此时秒启服务
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
关于“Tomcat如何部署服务”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。