tomcat软件部署

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访问:

相关推荐
Memory_荒年7 分钟前
TiDB:当 MySQL 遇上分布式,生了个“超级混血儿”
java·数据库·后端
asom2210 分钟前
DDD(领域驱动设计) 核心概念详解
java·开发语言·数据库·spring boot
程序员小董19 分钟前
从 RocksDB 定时器出发:手写一个通用的 Linux 高精度定时器
linux·服务器
大傻^1 小时前
LangChain4j Spring Boot Starter:自动配置与声明式 Bean 管理
java·人工智能·spring boot·spring·langchain4j
沐硕1 小时前
《基于改进协同过滤与多目标优化的健康饮食推荐系统设计与实现》
java·python·算法·fastapi·多目标优化·饮食推荐·改进协同过滤
大傻^1 小时前
Spring AI 2.0 MCP 协议实战:Model Context Protocol SDK 与多服务器编排
服务器·人工智能·spring
愣头不青1 小时前
560.和为k的子数组
java·数据结构
共享家95271 小时前
Java入门(String类)
java·开发语言
l软件定制开发工作室2 小时前
Spring开发系列教程(34)——打包Spring Boot应用
java·spring boot·后端·spring·springboot
0xDevNull2 小时前
Spring Boot 循环依赖解决方案完全指南
java·开发语言·spring