iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >Tomcat服务部署及优化的实现
  • 388
分享到

Tomcat服务部署及优化的实现

2024-04-02 19:04:59 388人浏览 八月长安
摘要

目录一、Tomcat介绍二、配置文件介绍及核心组件2.1.Tomcat核心组件2.2.Tomcat处理请求过程2.3.配置文件三、Tomcat服务部署1.安装jdk2.设置JDK环境

一、Tomcat介绍

  • 免费的、开放源代码的WEB应用服务器
  • Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目 
  • 由Apache、Sun和一些公司及个人共同开发而成
  • 深受Java爱好者的喜爱,并得到部分软件开发商的认可
  • 目前比较流行的Web应用服务器

二、配置文件介绍及核心组件

2.1.Tomcat核心组件

Tomcat 由一系列的组件构成,其中核心的组件有三个:

  • Web 容器:完成 Web 服务器的功能Http https请求的接受和响应。
  • Servlet 容器:由名称为 catalina的脚本来处理 Servlet 代码(具体的一个任务,从数据库中拿取数据给与前端)。
  • jsP 容器:用于将 JSP 动态网页翻译成 Servlet 代码 index.html index.PHP index.jsp。

多实例:多实例就是在一台服务器上同时开启多个不同的服务端口,同时运行多个服务进程,这些服务进程通过不同的Socket监听不同的服务端口来提供服务。

引擎:一般而言,引擎是一个程序或一套系统的支持部分。常见的程序引擎有游戏引擎、搜索引擎、杀毒引擎等。

2.2.Tomcat处理请求过程

 详细过程:

  • 用户在浏览器中输入该网址,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/1.1 Connector获得;
  • Connector把该请求交给它所在的Service的Engine (Container) 来处理,并等待Engine的回应;
  • Engine获得请求localhost/test/index.jsp,匹配所有的虚拟主机Host;
  • Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机),名为localhostHost获得请求/test/index.jsp,匹配它所拥有的所有Context。Host匹配到路径为/test的Context(如果匹配不到就把该请求交给路径名为“”的Context去处理);
  • path="/test"的Context获得请求/ index. jsp,在它的mapping table中寻找出对应的Servlet。Context 匹配到URLPattern为* .jsp的Servlet,对应于JspServlet类;
  • 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet()或doPost(),执行业务逻辑、数据存储等
  • Context把执行完之后的HttpServletResponse对象返回给Host; 
  • Host把HttpServletResponse对象返回给Engine;
  • Engine把HttpServletResponse对象返回Connector;
  • Connector把HttpServletResponse对象返回给客户Browser;

2.3.配置文件

(1)主要目录说明

  • 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 缓存的时候会使用到

(2)Tomcat配置文件详解

① catalina.policy:权限控制配置文件
② catalina.properties:Tomcat的属性配置文件
③ ⭐⭐context.xml:上下文配置文件
④ logging.properties:日志相关配置文件
⑤ ⭐⭐⭐server.xml:主配置文件,通过配置文件,可以修改tomcat的启动端口、网站目录、虚拟主机、开启https等功能
⑥ tomcat-user.xml/.xsd:管理用户配置文件
⑦ web.xml:Tomcat的servlet、servlet-mapping、filter、MIME等相关配置

三、Tomcat服务部署

1.安装jdk

在部署Tomcat之前必须安装好jdk,因为jdk是Tomcat运行的必要环境

1.关闭防火墙
 
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
 
2.将安装 Tomcat 所需软件包传到/opt目录下
cd /opt
 
apache-tomcat-9.0.16.tar.gz 
jdk-8u201-linux-x64.rpm
 
3.切换至/opt下,安装JDK
cd /opt
rpm -ivh jdk-8u201-linux-x64.rpm 

2.设置JDK环境变量

1.修改配置文件
vim /etc/profile
 
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
 
2.刷新配置文件
source /etc/profile

3.安装tomcat

1.切换至/opt下,解压tomcat包
cd /opt
tar -zxf apache-tomcat-9.0.16.tar.gz 
 
2.将解压后的包拷贝至/usr/local/下并重命名
mv apache-tomcat-9.0.16 /usr/local/tomcat 

4.启动tomcat

1.为tomcat服务创建软链接
ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/
ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/
 
2.开启服务或者关闭服务
startup.sh
shutdown.sh
 
3.查看是否开启成功
netstat -natp | grep 8080

5.在网页中查看

http://192.168.250.70:8080

6.将tomcat添加到服务

1.先关闭服务
shutdown.sh
 
2.添加用户设置属主属组
useradd -s /sbin/nologin tomcat
chown tomcat:tomcat tomcat/ -R
 
3.新建服务文件
vim /etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat
#After=syslog.target network.target remote-fs.target nss-lookup.target
After=syslog.target network.target
 
[Service]
Type=forking
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
RestartSec=3
PrivateTmp=true
User=tomcat
Group=tomcat
 
[Install]
WantedBy=multi-user.target
 
4. 重新加载服务,并开启,查看是否成功启动
systemctl daemon-reload
systemctl start tomcat
netstat -ntap |grep 8080

四、Tomcat服务优化

4.1.Tomcat 虚拟主机配置

1.创建 kgc 和 benet 项目目录和文件

1.添加地址映射
vim /etc/hosts
192.168.250.70 www.kGC.com www.benet.com
 
2.创建目录并且写入文件
mkdir /usr/local/tomcat/webapps/kgc
mkdir /usr/local/tomcat/webapps/benet
echo "this is kgc page\!" > /usr/local/tomcat/webapps/kgc/index.jsp
echo "this is benet page\!" > /usr/local/tomcat/webapps/benet/index.jsp

2、修改 Tomcat 主配置文件

<Host name="www.kgc.com"  appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
   <Context docBase="/usr/local/tomcat/webapps/kgc" path="" reloadable="true" />
       </Host>
 

<Host name="www.benet.com"  appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
   <Context docBase="/usr/local/tomcat/webapps/benet" path="" reloadable="true" />
       </Host>

3.关闭tomcat服务,再开启tomcat服务

shutdown.sh
tartup.sh

4.客户机浏览器验证访问验证

echo "192.168.250.60 www.kgc.com www.benet.com" >> /etc/hosts

浏览器访问 http://www.kgc.com:8080
浏览器访问 http://www.benet.com:8080

4.2.Tomcat配置文件参数优化

Tomcat默认安装下的缺省配置并不适合生产环境,它可能会频繁出现假死现象需要重启,只有通过不断压测优化才能让它最高效率稳定的运行。优化主要包括三方面,分别为操作系统优化(内核参数优化),Tomcat配置文件参数优化,Java虚拟机JVM)调优。

常用的优化参数:

  • [ maxThreads]    Tomcat 使用线程来处理接收的每个请求,这个值表示Tomcat可创建的最大的线程数,默认值是200。
  • [minSpareThreads]    最小空闲线程数,Tomcat启动时的初始化的线程数,表示即使没有人使用也开这么多空线程等待,默认值是 10。
  • [maxSpareThreads]    最大备用线程数,一旦创建的钱程超过这个值,Tomcat就会关闭不再需要的socket线程。默认值是-1(无限 制)。一般不需要指定。
  • [URIEncoding]&nbsp;   指定Tomcat容器的URL编码格式,语言编码格式这块倒不如其它Web服务器软件配置方便,需要分别指定。
  • [connnectionTimeout]    网络连接超时,单位:堂秒,设置为0表示永不超时,这样设置有隐患的。通常默认20000室秒就可以。
  • [enableLookups]    是否反查域名,以返回远程主机的主机名,取值为:true或false,如果设置为false,则直接返回IP地址,为 了提高处理能力,应设置为false。
  • [disableUploadTimeout]    上传时是否使用超时机制。应设置为true。
  • [connectionuploadTimeout]    上传超时时间,毕竟文件上传可能需要消耗更多的时间,这个根据你自己的业务需要自己调,以使Servlet有较 长的时问来完成它的执行,需要与上一个参数一起配合使用才会生效。
  • [acceptcount]    指定当所有可以使用的处理请求的线程数都被使用时,可传入连接请求的最大队列长度,超过这个数的请求将 不予处理,默认为100个。
  • [compression]    是否对响应的数据进行GZIP压缩,off:表示禁止压缩;on:表示允许压缩(文本将被压缩)、force:表示所有情况下都进行压缩,默认值为 off,压缩数据后可以有效的减少页面的大小,一般可以减小 1/3 左右,节省带宽。
  • [compressionMinSize]    表示压缩响应的最小值,只有当响应报文大小大于这个值的时候才会对报文进行压缩,如果开启了压缩功能,默认值就是 2048。
  • [compressableMimeType]    压缩类型,指定对哪些类型的文件进行数据压缩。
  • [noCompressionUserAgents=“Gozilla, traviata”]    对于以下的浏览器,不启用压缩。
<Connector port="8080" protocol="HTTP/11.1" 
connectionTimeout="20000" 
redirectPort="8443" 
minSpareThreads="50" 
enableLookups="false" 
disableUploadTimeout="true" 
acceptCount="300" 
maxThreads="500" 
processorCache="500"
URIEncoding="UTF-8" 
compression="on" 
compressionMinSize="2048" 
compressableMimeType="text/html,text/xml,text/javascript,text/CSS,text/plain,image/gif,image /jpg,image/png"/>

到此这篇关于Tomcat服务部署及优化的实现的文章就介绍到这了,更多相关Tomcat服务部署及优化内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Tomcat服务部署及优化的实现

本文链接: https://www.lsjlt.com/news/143573.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Tomcat服务部署及优化的实现
    目录一、Tomcat介绍二、配置文件介绍及核心组件2.1.Tomcat核心组件2.2.Tomcat处理请求过程2.3.配置文件三、Tomcat服务部署1.安装jdk2.设置JDK环境...
    99+
    2024-04-02
  • 【Web服务器】Tomcat的部署
    文章目录 前言一、Tomcat 的概念1. Tomcat 核心组件1.1 什么是 servlet1.2 什么是 JSP 2. Tomcat 功能组件结构2.1 Container 结构分...
    99+
    2023-09-07
    tomcat java servlet
  • 云服务器部署tomcat
    云服务器部署Tomcat的方式通常有两种: 使用公共云服务:如果您正在使用公共云服务,通常您可以使用虚拟主机托管或使用云服务器服务。以下是一些常见的选择: Amazon Web Services (AWS):它是最流行的 IaaS ...
    99+
    2023-10-26
    服务器 tomcat
  • tomcat下部署jenkins的实现方法
    目录tomcat简介安装tomcattomcat简介 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心...
    99+
    2024-04-02
  • Tomcat多实例部署及配置原理
    1、关闭防火墙,将安装 Tomcat 所需软件包传到/opt目录下 jdk-8u201-linux-x64.rpm apache-tomcat-9.0.16.tar.gz s...
    99+
    2024-04-02
  • 亚马逊服务器部署优化
    确保您选择的硬件符合您的需求:根据您的应用程序和数据量选择最适合您的硬件规格。例如,如果您正在处理大量数据,您可能需要更多的CPU、内存和磁盘空间。 安装合适的软件:选择合适的操作系统、数据库和应用程序安装程序,并确保您已正确配置它们。 ...
    99+
    2023-10-27
    亚马逊 服务器
  • 云服务器如何部署tomcat
    云服务器部署tomcat的操作步骤:在云服务器桌面,右键“我的电脑”选择“属性”。在左侧导航栏中选择“系统属性”,再打开“高级”选项卡。在对话框中,点击“环境变量”。在用户变量和系统变量里的中添加变量即可。配置Tomcat环境:系统变量 →...
    99+
    2024-04-02
  • linux如何部署tomcat服务器
    部署Tomcat服务器在Linux系统上可以按照以下步骤进行: 下载Tomcat安装包:首先在Tomcat官网(https://...
    99+
    2024-04-09
    linux tomcat
  • 阿里云服务器部署tomcat
    阿里云服务器部署tomcat,通常可以使用以下步骤: 选择Tomcat平台:选择适合您的业务需求、性能要求、安全需求的Tomcat服务器。例如,对于企业客户,您可能需要选择专为大规模、高可用性和高可靠性设计的服务器。对于个人用户,您可能...
    99+
    2023-10-26
    阿里 服务器 tomcat
  • 怎么安装部署Tomcat服务器
    要安装和部署Tomcat服务器,可以按照以下步骤进行: 下载Tomcat服务器:首先,从Apache Tomcat官方网站上下载...
    99+
    2024-04-09
    Tomcat
  • Springboot服务Docker化自动部署的实现方法
    还在手动将springboot项目打包,然后上传服务器,手动执行启动命令将项目启动吗?你out了!通过Docker配置DockerMaven插件,快速部署,一键将springboot...
    99+
    2024-04-02
  • 如何实现keeplied +nginx +tomcat 高可用部署
    这篇文章将为大家详细讲解有关如何实现keeplied +nginx +tomcat 高可用部署,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 Tomcat 部署本次实验是在两台虚拟...
    99+
    2023-06-05
  • 怎么用Python实现服务部署自动化
    这篇“怎么用Python实现服务部署自动化”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用Python实现服务部署自动化...
    99+
    2023-07-06
  • 云服务器自动化部署怎么实现
    实现云服务器的自动化部署可以通过以下几个步骤来实现:1. 配置云服务器环境:首先需要在云平台上创建一个虚拟机实例,并配置好所需要的操...
    99+
    2023-09-16
    云服务器
  • tomcat+nginx实现多应用部署的示例代码
    目录多应用部署1-tomcat配置  1.1-项目配置 1.2-服务配置2-Nginx配置3-完成部署多应用部署 1-tomcat配置   1.1...
    99+
    2024-04-02
  • 使用IDEA创建servlet JavaWeb 应用及使用Tomcat本地部署的实现
    目录需要安装好的软件背景知识-Servlet是什么?Servlet 是一种规范Servlet 接口JSPWeb 容器背景知识-JavaWeb应用的目录结构1.新建一个java项目2....
    99+
    2024-04-02
  • Gunicorn和Flask的优化部署:提升部署方案的最佳实践
    Gunicorn和Flask的最佳实践:如何优化你的部署方案? 引言:Gunicorn是一个高性能的Python WSGI服务器,而Flask是一个轻量级的Python Web框架。二者的结合可以帮助开发者快速构建高效的Web应...
    99+
    2024-01-17
    Flask gunicorn 部署。
  • war包部署到Tomcat下运行的实现步骤
    目录war包部署到Tomcat下运行总结war包部署到Tomcat下运行 1、配置JDK安装路径到环境变量 2、配置Tomcat安装路径到环境变量 3、从Eclipse导出war包 ...
    99+
    2023-03-21
    war包部署 war包部署到Tomcat Tomcat部署war包
  • 前端:Tomcat服务器部署Web项目
    文章目录 1.1 C/S架构1.2 B/S架构2.1 服务器2.2 常见服务器3.1 Tomcat安装3.2 Tomcat使用3.3 Tomcat配置3.4 Tomcat项目部署4.1 Ser...
    99+
    2023-10-20
    tomcat 服务器 前端
  • MongoDB数据库安装部署及警告优化
    目录1.软件下载2.部署MongoDB2.1.规划部署目录2.2.下载软件包2.3.安装MongoDB2.4.MongoDB配置文件介绍2.5.编写MongoDB配置文件2.6.启动...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作