有趣生活

当前位置:首页>科技>tomcat安装和使用tomcat安装与使用

tomcat安装和使用tomcat安装与使用

发布时间:2026-07-21阅读(1)

导读开课本章我们来学习一下另外的一种web服务tomcat,这是一个支持JSP页面的web服务,很多开发方向的IT人员,包括运维开发方向的同仁,都会选择使用to....开课

本章我们来学习一下另外的一种web服务tomcat,这是一个支持JSP页面的web服务,很多开发方向的IT人员,包括运维开发方向的同仁,都会选择使用tomcat

知识点

什么是tomcat

CentOS8中如何部署tomcat

windows系统中如何部署tomcat

Tomcat的相关目录和文件的作用

tomcat的管理界面如何使用

如何使用tomcat发布静态页面

tomcat动态页面的实现

tomcat多实例的实现

让nginx和tomcat协同工作

tomcat的运行模式

tomcat运行模式的调整

额外的优化参数

压力测试工具的使用

课程目标

能够知道什么是tomcat

能够在不同的系统上部署tomcat

能够记住tomcat的常用目录和文件

能够知道如何管理tomcat

能够在tomcat上部署静态网站和动态网站

能够将nginx和tomcat整合并实现多实例

能够对tomcat进行简单的调优

能够使用压力测试工具

Tomcat介绍

Apache Tomcat最早是由Sun开发的,在1999年被捐献给ASF(Apache 软件基金会 Apache Software Foundation),隶属于Jakarta(雅加达)项目,现在已经独立为一个顶级项目。因为Tomcat 技术先进、性能稳定,同时也是一个免费的开放源代码的Web 应用服务器,因而深受JAVA 爱好者的喜爱并得到了部分软件开发商的认可,被很多企业普遍使用,也是开发和调试JSP程序的首选。成为目前比较流行的Web 应用服务器。

官方网站:http://tomcat.apache.org/

tomcat的同类产品
  • Resin 服务器

Resin是Caucho公司的产品,速度非常快。可以显示动态内容,也可以显示静态内容,但是用户数量少,参考文档也少,使用起来不太方便,一旦涉及到相关文件和内容的更新,系统会自动重新部署并重启。

  • Jetty 服务器

Jetty是一个纯粹的基于Java的web服务器,也是一个开源项目。架构简单,速度快,修改简单,但是对Java的支持不如tomcat全面,

  • WebLogic 服务器

WebLogic 是BEA公司的产品,可进一步细分为 WebLogic Server、WebLogic Enterprise 和 WebLogic Portal 等系列,其中 WebLogic Server 的功能特别强大。WebLogic 支持企业级的、多层次的和完全分布式的Web应用,并且服务器的配置简单、界面友好。对于那些正在寻求能够提供Java平台所拥有的一切应用服务器的用户来说,WebLogic是一个十分理想的选择。但是不开源且收费

JBoss、WebSphere

Apache nginx tomcat比较

Apache

优点:模块多,功能全面,性能稳定,适合静态HTML

缺点:配置相对复杂,自身不支持动态页面

Nginx

优点:功能较多,负载均衡、反向代理等,速度比Apache快

缺点:轻量级web服务器,功能不如apache全面

Tomcat

优点:能够处理动态请求,可以独立于Apache运行,支持JSP

缺点:对静态内容和大文件的支持有所欠缺

Apache是用C写的,Nigix是用C写的,Tomcat是用Java写的。Tomcat是Apache的拓展,更实质的说是Java应用服务器,用于处理jsp后台语言开发的应用,主要用于处理JSP动态网页。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器(主要用于解析servlet/JSP,同时具备http服务),单纯的Tomcat性能有限,在很多地方表现有欠缺,如活动连接支持、静态内容、大文件和HTTPS等,因此多数都是Apache Tomcat JavaSDK的集成。严格的来说,Apache/Nginx 应该叫做「HTTP server」;而 Tomcat 则是一个「Application Server」,或者更准确的来说,是一个「Servlet/JSP」应用的容器(Ruby/python 等其他语言开发的应用也无法直接运行在 Tomcat 上)。

安装部署Linux部署tomcat

下载软件包

tomcat:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.31/bin/apache-tomcat-9.0.31.zip

jdk:https://www.oracle.com/java/technologies/javase-downloads.html

如何想使用tomcat9的话,官方要求JRE的版本必须是8以上的,所以在安装之前,我们需要确认一下本机的版本,如果满足需求的话可以直接安装tomcat

[root@manage01 ~]# java -versionbash: java: 未找到命令...文件搜索失败: Cannot update read-only repo#系统提示没有找到命令,意味着没有安装相关软件包,所以我们要安装[root@manage01 ~]# rpm -ivh jdk-13.0.2_linux-x64_bin.rpm 警告:jdk-13.0.2_linux-x64_bin.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEYVerifying... ################################# [100%]准备中... ################################# [100%]正在升级/安装...1:jdk-13.0.2-2000:13.0.2-ga ################################# [100%]安装完成后再次查看[root@manage01 ~]# java -versionjava version "13.0.2" 2020-01-14Java(TM) SE Runtime Environment (build 13.0.2 8)#java的运行环境,也叫jreJava HotSpot(TM) 64-Bit Server VM (build 13.0.2 8, mixed mode, sharing) #JVM java的虚拟机,可以使Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的字节码就可以了,这样就可以在多种平台上不加修改地运行。很多语言都采用了这种类似的思路,才使得他们具有可移植性,比如说python安装tomcat我们可以看到tomcat软件包的名称包含有apache字样,原因很简单,它是由apache资助的项目[root@manage01 ~]# unzip apache-tomcat-9.0.31.zip -d /opt/[root@manage01 ~]# cd /opt/[root@manage01 opt]# mv apache-tomcat-9.0.31 tomcat1解压完成,改个名就可以使用了,因为tomcat是一个二进制包,什么意思呢?就类似于我们下载游戏的时候的硬盘版,什么是硬盘版?解压就能玩,所以这个tomcat我们就压之后就可以使用了,不需要安装。[root@manage01 bin]# pwd/opt/tomcat1/bin[root@manage01 bin]# sh startup.sh Cannot find ./catalina.shThe file is absent or does not have execute permissionThis file is needed to run this program启动tomcat[root@manage01 bin]# chmod x catalina.sh [root@manage01 bin]# sh startup.sh Using CATALINA_BASE: /opt/tomcat1Using CATALINA_HOME: /opt/tomcat1Using CATALINA_TMPDIR: /opt/tomcat1/tempUsing JRE_HOME: /usrUsing CLASSPATH: /opt/tomcat1/bin/bootstrap.jar:/opt/tomcat1/bin/tomcat-juli.jarTomcat started.[root@manage01 webapps]# netstat -antp | grep javatcp6 0 0 127.0.0.1:8005 :::* LISTEN 46987/java tcp6 0 0 :::8080 :::* LISTEN 46987/java tomcat的两个端口8005 是关闭tomcat使用的端口,可以使用telnet serverip 8005 然后输入大写的SHUTDOWN关闭tomcat,所以建议更改端口 或者把引号中了命令改成不容易记忆的,个人推荐改命令,因为改端口没有告诉负责网络安全的同事就会给你屏蔽掉………8080 连接端口8009 AJP协议使用的端口,tomcat的优势是处理jsp页面 但是对于图片,静态页面处理能力特别差,相对于apache来说,那么这个时候怎么办 做个分流 jsp页面由tomcat完成,静态的页面 图片由AJP来完成,AJP是定向包协议 使用二进制格式来传输可读性文本,在server.xml配置文件中默认不生效

注意tomcat的访问端口是8080

提示:如果之前系统中安装过java环境的话,可能会出现即便安装完成新的jdk之后,使用java -version命令所查询的结果依然是老版本的,这个问题是由于环境变量引起的,所以需要修改环境变量设置文件[root@manage01 ~]# vim /root/.bash_profile #####javaJAVA_HOME=/usr/java/jdk-13.0.2#对应自己安装的版本PATH=$JAVA_HOME/bin:$PATH:$HOME/binCLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jarexport PATH JAVA_HOME CLASSPATH CATALINA_HOME

Windows部署tomcat

tomcat:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.31/bin/apache-tomcat-9.0.31-windows-x64.zip

jdk:https://www.oracle.com/java/technologies/javase-jdk11-downloads.html

安装jdk11

如果使用java -version看到的还是以前的提示,重启一下系统

安装tomcat

解压tomcat的压缩包并进入到bin目录下

server status 查看服务器的状态,包括linux主机的信息,tomcat的版本信息,资源使用情况等

manager app 管理网站

host manager 虚拟主机的管理

发布静态页面目录说明

tomcat主目录

bin:命令,存放不同平台上启动或关闭的脚本BUILDING.txt&RUNNING.txt:使用文档,告诉用户如何搭建conf:各种全局配置文件,最主要的是server.xml和web.xml CONTRIBUTING.md:捐赠lib:tomcat需要用到的库,主要是各种jar包LICENSE:许可logs:存放tomcat的日志NOTICE:通知信息README.md:读我文档RELEASE-NOTES:版本信息temp:临时文件 webapps:tomcat的web发布目录,类似于nginx或者apache的html目录 work:tomcat的工作目录,存放的是jsp编译后产生的.class文件及.java文件。清空work目录,然后重启tomcat,可以达到清除缓存的作用。

bin目录

bin目录下的文件主要有两类,一个是Linux使用的.sh结尾的文件,另外一个是windows使用的.bat结尾的文件,

catalina tomcat的设置脚本,也可以启动&关闭tomcat

[root@manage01 bin]# sh catalina.sh helpUsing CATALINA_BASE: /opt/tomcat1Using CATALINA_HOME: /opt/tomcat1Using CATALINA_TMPDIR: /opt/tomcat1/tempUsing JRE_HOME: /usrUsing CLASSPATH: /opt/tomcat1/bin/bootstrap.jar:/opt/tomcat1/bin/tomcat-juli.jarUsage: catalina.sh ( commands ... )commands:debug Start Catalina in a debuggerdebug -security Debug Catalina with a security managerjpda start Start Catalina under JPDA debuggerrun Start Catalina in the current windowrun -security Start in the current window with security managerstart Start Catalina in a separate windowstart -security Start in a separate window with security managerstop Stop Catalina, waiting up to 5 seconds for the process to endstop n Stop Catalina, waiting up to n seconds for the process to endstop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still runningstop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still runningconfigtest Run a basic syntax check on server.xml - check exit code for resultversion What version of tomcat are you running?Note: Waiting for the process to end and use of the -force option require that $CATALINA_PID is defined[root@manage01 bin]# sh catalina.sh stop[root@manage01 bin]# sh catalina.sh helpstartup 启动脚本shutdown 关闭脚本

conf目录

这个目录下主要存放的是与tomcat设置相关的文件,常用的配置文件主要包含server.xml 可以设置端口号、设置域名或IP、默认加载的项目、请求编码 web.xml 可以设置tomcat支持的文件类型 context.xml 可以用来配置数据源之类的 tomcat-users.xml 用来配置管理tomcat的用户与权限 Catalina 此目录下可以设置默认加载的项目

webapps目录

ROOT tomcat默认的页面docs 使用说明文档examples 例子--tomcat首页中的examples按钮对应的内容host-manager 首页Host Manager按钮对应的内容manager 首页 Manager App按钮对应的内容

tomcat相关配置文件简介

server.xml

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图