Tomcat主页配置&Tomcat多实例部署

Tomcat

Tomcat是一个流行的Java Servlet容器,它提供了一个运行Java Web应用程序的环境。

简介:

Tomcat是由Apache软件基金会开发和维护的开源项目。它是一个轻量级的Web服务器和Servlet容器,可以运行Java Web应用程序。Tomcat提供了对Java Servlet、JavaServer Pages(JSP)和Java WebSocket的支持,是开发和部署Java Web应用程序的常用选择之一。


工作原理:

当接收到客户端的HTTP请求时,Tomcat首先作为Web服务器接收请求。然后,它通过配置的Connector监听指定的端口,等待客户端连接。一旦连接建立,Tomcat将处理HTTP请求,根据请求的URL匹配相应的Servlet或静态资源文件。Tomcat使用一个或多个线程池来处理并发请求,并通过Servlet容器调用相应的Servlet进行逻辑处理。处理完成后,Tomcat将生成HTTP响应,并通过连接的管道将响应发送回客户端。


优缺点

优点:

易于使用和部署:Tomcat提供了简单的配置和部署过程,使得开发者能够快速启动和部署Java Web应用程序。

轻量级:Tomcat的核心包相对较小,占用的系统资源较少,并且具有较快的启动时间。

可扩展性:Tomcat支持插件式架构,可以通过添加额外的组件来扩展其功能。

缺点:

性能限制:相比于一些专用的Web服务器,Tomcat在处理高并发请求时可能存在一定的性能限制。

内存消耗:由于Tomcat提供了完整的Java Servlet容器功能,它的内存消耗相对较高,特别是在部署多个应用程序时。

总体而言,Tomcat是一个强大而灵活的Java Servlet容器,广泛应用于Java Web应用程序的开发和部署。它的简单性和可扩展性使其成为开发人员的首选,尤其是对于中小型项目或初学者来说。


jdk介绍

JDK(Java Development Kit)是Java开发工具包的缩写。它是一种由Oracle Corporation提供的免费软件,用于开发、编译和运行Java应用程序。

JDK包含的主要组件和工具:

  • Java编译器(javac):用于将Java源代码编译成Java字节码文件(.class文件)。
  • Java运行时环境(JRE):它包含了Java虚拟机(JVM)以及Java标准类库,可以在计算机上执行Java应用程序。
  • Java开发工具:JDK提供了一系列开发工具,如调试器(jdb)、文档生成器(javadoc)、jar打包工具(jar)等,这些工具可以帮助开发人员进行代码编写、调试、文档生成、打包等各种开发任务。
  • Java类库:JDK包含了Java标准类库,提供了丰富的类和接口,包括字符串处理、文件操作、网络通信、图形界面、多线程等功能。

JDK的功能:

  • Java开发:JDK是Java应用程序的开发工具包,开发人员可以使用其中的编译器、开发工具和类库来编写Java代码,并进行调试和测试。
  • 编译:JDK提供了Java编译器(javac),将Java源代码编译成平台无关的Java字节码文件,可以在任何支持Java虚拟机的计算机上运行。
  • 运行:JDK中的Java运行时环境(JRE)包含了Java虚拟机(JVM)和Java标准类库,可以执行已经编译的Java应用程序。
  • 打包和部署:JDK提供了用于打包成可执行的jar文件的工具,方便应用程序的分发和部署。
  • 文档生成:JDK提供了文档生成工具(javadoc),可以根据代码注释自动生成文档,方便代码的文档化和维护。

总之,JDK是Java开发的基础工具包,它包含了编译器、运行时环境、开发工具和类库等,通过它可以进行Java应用程序的开发、编译、运行和部署。


Tomcat主页面

如何部署Tomcat请阅读部署lamt架构中的部署Tomcat部分

部署完lamt架构后,我们可以通过ip加8080端口号来访问Tomcat的主页面(根目录)

在这里插入图片描述

但是右边的Server Status、Manager App、Host Manager都不可以访问


主页面配置

需要做以下配置

//修改tomcat-users.xml配置文件,添加一个manager-gui和admin-gui角色
[root@wanf ~]# cd /usr/local/tomcat/conf/
[root@wanf conf]# vim tomcat-users.xml
[root@wanf conf]# cat tomcat-users.xml
(省略)
(添加以下三行内容,用户名和密码可以自定义)
<role rolename="manager-gui"/>         #这行
<role rolename="admin-gui"/>           #这行
<user username="wanf" password="wanf001" roles="manager-gui,admin-gui"/>  #这行
</tomcat-users>       //在最后一行的前面加,不可以随便在哪个位置加
[root@wanf conf]#  


//放行本机网段可以访问Server Status和Manager App ,加上192\.168\.179\.\d+ 这个内容
[root@wanf ~]# cd /usr/local/tomcat/webapps/manager/META-INF/
[root@wanf META-INF]# vim context.xml 
[root@wanf META-INF]# cat context.xml 
(省略)
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="192\.168\.179\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
(省略)

//放行本机网段可以访问Host Manager,加上192\.168\.179\.\d+ 这个内容
[root@wanf META-INF]# cd /usr/local/tomcat/webapps/host-manager/META-INF/
[root@wanf META-INF]# vim context.xml 
[root@wanf META-INF]# cat context.xml 
(省略)
<Valve className="org.apache.catalina.valves.RemoteAddrValve"         allow="192\.168\.179\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
(省略)

//放行本机网段可以访问examples,加上192\.168\.179\.\d+ 这个内容
[root@wanf ~]# cd /usr/local/tomcat/webapps/examples/META-INF/
[root@wanf META-INF]# vim context.xml 
[root@wanf META-INF]# cat context.xml 
(省略)
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="192\.168\.179\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
(省略)

//重启Tomcat服务
[root@wanf conf]# /usr/local/tomcat/bin/shutdown.sh 
[root@wanf conf]# /usr/local/tomcat/bin/startup.sh 

主页面功能

主机状态

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



管理器应用程序

在这里插入图片描述

在这里插入图片描述



主机管理器

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



示例examples

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



Tomcat多实例部署

环境

Tomcat多实例是在一台主机上部署多个Tomcat服务

Tomcat实例Tomcat版本端口号
tomcat-example1tomcat-9.0.798005
8080
8443
tomcat-example2tomcat-9.0.798006
8081
8444
前期准备
//配置yum源,推荐使用阿里云源
[root@wanf ~]# rm -rf /etc/yum.repos.d/*
[root@wanf ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
[root@wanf ~]# sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
[root@wanf ~]# yum clean all 
18 files removed
[root@wanf ~]# yum makecache 

//永久关闭防火墙和selinux
[root@wanf ~]# systemctl disable --now firewalld.service 
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@wanf ~]# setenforce 0
[root@wanf ~]# sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

//重启主机
[root@wanf ~]# reboot
部署多实例
//安装Java环境
[root@wanf ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel

//下载Tomcat软件包
[root@wanf ~]# yum -y install wget
[root@wanf ~]# wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.79/bin/apache-tomcat-9.0.79.tar.gz

[root@wanf ~]# ls
anaconda-ks.cfg  apache-tomcat-9.0.79.tar.gz


//解压安装tomcat-example1
[root@wanf ~]# ls
anaconda-ks.cfg  apache-tomcat-9.0.79.tar.gz
[root@wanf ~]# tar -xf apache-tomcat-9.0.79.tar.gz
[root@wanf ~]# mv apache-tomcat-9.0.79 /usr/local/tomcat-example1
[root@wanf ~]# 

//解压安装tomcat-example2
[root@wanf ~]# ls
anaconda-ks.cfg  apache-tomcat-9.0.79.tar.gz
[root@wanf ~]# tar -xf apache-tomcat-9.0.79.tar.gz
[root@wanf ~]# mv apache-tomcat-9.0.79 /usr/local/tomcat-example2


//查看两个实例
[root@wanf ~]# cd /usr/local/
[root@wanf local]# ls | grep tomcat
tomcat-example1
tomcat-example2
[root@wanf local]# 
配置多实例

tomcat服务启动后会起来三个端口,默认分别是8005(关闭端口)、8080(访问端口)、8443(重定向端口);所以如果有多个tomcat实例的话,就要修改端口,避免冲突。

//由于只有两个实例,所以只修改tomcat-example2的端口。tomcat-example保持默认。
//修改配置文件,分别修改这三行。
[root@wanf ~]# cd /usr/local/tomcat-example2/conf/
[root@wanf conf]# vim server.xml 
...
<Server port="8006" shutdown="SHUTDOWN">
...
<Connector port="8081" protocol="HTTP/1.1"
...
           redirectPort="8444"
...
[root@wanf conf]#


//启动tomcat-example1
[root@wanf ~]# /usr/local/tomcat-example1/bin/startup.sh 

//查看端口号,8005和8080已经起来了
[root@wanf ~]# ss -anlt
State  Recv-Q  Send-Q        Local Address:Port   Peer Address:Port Process 
LISTEN 0       128                 0.0.0.0:22          0.0.0.0:*            
LISTEN 0       1        [::ffff:127.0.0.1]:8005              *:*            
LISTEN 0       100                       *:8080              *:*            
LISTEN 0       128                    [::]:22             [::]:*            
[root@wanf ~]# 

//启动tomcat-example2
[root@wanf ~]# /usr/local/tomcat-example2/bin/startup.sh 

//查看端口号,8006和8081已经起来了
[root@wanf ~]# ss -anlt
State  Recv-Q  Send-Q        Local Address:Port   Peer Address:Port Process 
LISTEN 0       128                 0.0.0.0:22          0.0.0.0:*            
LISTEN 0       1        [::ffff:127.0.0.1]:8005              *:*            
LISTEN 0       1        [::ffff:127.0.0.1]:8006              *:*            
LISTEN 0       100                       *:8080              *:*            
LISTEN 0       100                       *:8081              *:*            
LISTEN 0       128                    [::]:22             [::]:*            
[root@wanf ~]# 
配置多实例测试网页
//配置tomcat-example1的测试网页
[root@wanf ~]# cd /usr/local/tomcat-example1/webapps/
[root@wanf webapps]# mkdir test1 && cd test1
[root@wanf test1]# vim index.jsp
[root@wanf test1]# cat index.jsp
<html>
<head>
	<title>test page</title>
</head>
<body>
	<%
	    out.println("this is a tomcat-example1");
	%>
</body>
</html>
[root@wanf test1]# 


//配置tomcat-example2的测试网页
[root@wanf test1]# cd /usr/local/tomcat-example2/webapps/
[root@wanf webapps]# mkdir test2 && cd test2
[root@wanf test2]# vim index.jsp
[root@wanf test2]# cat index.jsp 
<html>
<head>
	<title>test page</title>
</head>
<body>
	<%
	    out.println("this is a tomcat-example2");
	%>
</body>
</html>
[root@wanf test2]# 
访问测试

通过8080端口访问实例1在这里插入图片描述


通过8081端口访问实例2

在这里插入图片描述


都可以访问到

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LcWanf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值