1.tomcat
2.tomcat功能组件
3.请求过程
4.tomcat部署
一.tomcat
tomcat 是 Java 语言开发的,Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,却不如nginx,apache功能强大,通常作为 Servlet 和 JSP容器,单独在后台运行。
其中核心的组件有三个:
(1)Web 容器:完成 Web 服务器的功能。
(2)Servlet 容器:名字为 catalina,用于处理 Servlet 代码。
(3)JSP 容器:用于将 JSP 动态网页翻译成 Servlet 代码。
二.tomcat功能组件
Tomcat 的核心功能有两个,分别是负责接收和反馈外部请求的连接器 Connector,和负责处理请求的容器 Container。 其中连接器和容器相辅相成,一起构成了基本的 web 服务 Service,每个 Tomcat 服务器可以管理多个 Service。
Connector:负责对外接收和响应请求。
Service:对外提供的 Web 服务。
每个 Service 会包含一个 Container 容器。在 Container 内部包含了 4 个子容器: 4个子容器的作用分别是:
(1)Engine:引擎,用来管理多个虚拟主机,一个 Service 最多只能有一个 Engine;
(2)Host:代表一个虚拟主机,也可以叫站点,通过配置 Host 就可以添加站点;
(3)Context:代表一个 Web 应用,包含多个 Servlet 封装器;
(4)Wrapper:封装器,容器的最底层。每一 Wrapper 封装着一个 Servlet,负责对象实例的创建、执行和销毁功能。
三.请求过程
Tomcat 请求过程: 1、用户在浏览器中输入网址,请求被发送到本机端口 8080,被在那里监听的 Connector 获得; 2、Connector 把该请求交给它所在的 Service 的 Engine(Container)来处理,并等待 Engine 的回应; 3、请求在 Engine、Host、Context 和 Wrapper 这四个容器之间层层调用,最后在 Servlet 中执行对应的业务逻辑、数据存储等。 4、执行完之后的请求响应在 Context、Host、Engine 容器之间层层返回,最后返回给 Connector,并通过 Connector 返回给客户端。
四.tomcat部署
准备部署tomcat必要的包jdk:
将jdk路径移动到/usr/local下:
在配置设置jdk的环境变量:
运行脚步后:
看下java信息:
首先使用文本工具编写java源代码,比如 Hello.java:
在命令行中,输入命令:javac Hello.java,对源代码进行编译,生成 class 字节码文件:
java Hello,运行 class 字节码文件:
准备好tomcat软件解压并移动到/usr/local路径下:
查看下tomcat路径下有无内容:
看下bin下的文件内容:
运行tomcat:
访问页面:
设置由systemd管理:
优化tomcat的速度,修改配置文件:
关于tomcat的目录文件:
bin:存放启动和关闭 Tomcat 的脚本文件
conf:存放 Tomcat 服务器的各种配置文件
lib:存放 Tomcat 运行需要的库文件的 jar 包,一般不作任何改动
logs:存放 Tomcat 执行时的日志
temp:存放 Tomcat 运行时产生的文件
webapps:存放 Tomcat 默认的 Web 应用项目资源的目录
tomcat的虚拟主机部署
先去tomcat网页目录下添加两个网页内容:
添加内容:
切换到tomcat配置文件中修改:
在设置windows的hosts文件,添加域名:
tomcat多例部署:
开启另一台主机,远程复制jdk以下的内容到20主机下:
运行配置文件:
看下版本:
切换到/opt下,解压tomcat压缩包:
看下有两个tomcat:
修改tomcat2的配置文件:
切换到tomcat1中:
在到tomcat2中修改:
访问页面:
端口8080访问:
端口8081访问: