Tomcat 服务部署及优化

简介: 1、Tomcat简介2、Tomcat 服务安装及部署3、Tomcat虚拟主机配置4、Tomcat 优化

1、Tomcat简介:


概述:

    Tomcat是Java语言开发的,Tomcat服务器时一个免费的开放源代码的web应用服务器,是Apache软件基金会的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

    Tomacat属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合被普遍使用,是开发和调试JSP程序的首选。

 一般来说,Tomcat虽然和Apache或者Nginx这些web服务器一样,具有处理HTML页面的功能,而由于其处理静态HTML的能力远不及Apache或者Nginx,所以Tomcat通常是作为一个Servlet和JSP容器,单独运行在后端。

 

Java Servlet :

    运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用Servlet,可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。与CGI(公共网关接口)功能相类似。

JSP全称Java Server Pages :

    一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。 JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。 JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

 

核心组件:

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

image.png



2、Tomcat 服务安装及部署:


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

a)关闭防火墙,将安装 Tomcat 所需软件包传到/opt目录下


systemctl stop firewalld
systemctl disable firewalld
setenforce 0

h1.png


b)安装JDK


cd /opt
rpm -qpl jdk-8u201-linux-x64.rpm
rpm -ivh jdk-8u201-linux-x64.rpm
java -version

2387773-20210817201458265-746576134.png

2387773-20210817201511543-355909795.png

2387773-20210817201519062-1378498419.png

2387773-20210817201525837-1465189590.png

c)设置JDK环境变量

vim /etc/profile.d/java.sh
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
source /etc/profile.d/java.sh
java -version


2387773-20210817201552380-572614639.png

2387773-20210817201559356-1401935485.png


2387773-20210817201605520-711038325.png

2387773-20210817201612060-381345106.png


补充:

  • CLASSPATH编译、运行Java程序时,JRE会去该变量指定的路径中搜索所需的类(.class)文件。
  • dt.jar是关于运行环境的类库,主要是 swing 的包。
  • tools.jar主要是一些jdk工具的类库,包括javac,java,javap,javadoc等。
  • JDKjava development kit (java开发工具)
  • JREjava runtime environment (java运行时环境)
  • JVMjava virtuak machine (java虚拟机),使java程序可以在多种平台上运行class文件。

 

 

 

d)安装启动Tomcat

cd /opt
tar zxvf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat

2387773-20210817201621241-2069122913.png

2387773-20210817201634009-1910665756.png


启动Tomcat

/usr/local/tomcat/bin/startup.sh
netstat -natp | grep 8080


2387773-20210817201647350-126074668.png


浏览器访问测试:

2387773-20210817201700460-1481249818.png


e)优化tomcat启动速度

第一次启动tomcat可能会发现 Tomcat 启动很慢,默认情况下可能会需要几十秒,可以修改jdk参数进行改。
vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security                
#117行修改   将/dev/random修改为/dev/urandom    <br> securerandom.source=file:/dev/urandom


完成重启tomcat服务

/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

2387773-20210817201726012-578283996.png


f)主要目录说明:

ll /usr/local/tomcat/

2387773-20210817201745078-787931692.png


image.png


3、Tomcat虚拟主机:


a)创建lvbu和caocao项目目录与文件

mkdir /usr/local/tomcat/webapps/lic
mkdir /usr/local/tomcat/webapps/accp
echo "This is lvbu page\!" > /usr/local/tomcat/webapps/lvbu/index.jsp
echo "This is caocao page\!" > /usr/local/tomcat/webapps/caocao/index.jsp


2387773-20210817201757462-271486573.png


b)修改tomcat主配置文件

vim /usr/local/tomcat/conf/server.xml


在165行插入:

<Host name="www.lvbu.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="/usr/local/tomcat/webapps/lic" path="" reloadable="true" />
</Host>
<Host name="www.accp.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false"    xmlNamespaceAware="false">
<Context docBase="/usr/local/tomcat/webapps/accp" path="" reloadable="true" />
</Host>/usr/local/tomcat/bin/shutdown.sh      #重启tomcat服务
/usr/local/tomcat/bin/startup.sh

2387773-20210817201819928-1274108670.png

2387773-20210817201837018-2002181563.png


image.png


浏览器访问测试:

echo "20.0.0.28 www.lvbu.com www.caocao.com" >> /etc/hosts

2387773-20210817201950231-301211916.png

2387773-20210817201858789-506051256.png


4、Tomcat优化:



Tomcat默认安装下的缺省配置并不适合生产环境,它可能会频繁出现假死现象需要重启,只有通过不断压测优化才能让它最高效率稳定的运行。

优化主要包括三方面,分别为操作系统优化(内核参数优化),Tomcat配置文件参数优化,Java虚拟机(JVM)调优。

 

常用优化参数:

image.png


image.png

vim /usr/local/tomcat/conf/server.xml
......
<Connector port="8080" protocol="HTTP/11.1"
connectionTimeout="20000"
redirectPort="8443"
#71行插入:<br><br>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"/>


2387773-20210817202006458-243757575.png

2387773-20210817202016523-1050763225.png


相关文章
|
10天前
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
71 26
|
3月前
|
监控 Java 应用服务中间件
部署tomcat部署实战案例
本文是关于Tomcat部署实战案例的教程,包括通过yum和二进制方式部署Tomcat的详细步骤,以及如何监控Tomcat服务。
215 84
部署tomcat部署实战案例
|
4月前
|
Java 应用服务中间件 Windows
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
|
3月前
|
应用服务中间件 Docker 容器
docker应用部署---Tomcat的部署配置
这篇文章介绍了如何使用Docker部署Tomcat服务器,包括搜索和拉取Tomcat镜像、创建容器并设置端口映射和目录映射,以及如何创建一个HTML页面并使用外部机器访问Tomcat服务器。
docker应用部署---Tomcat的部署配置
|
6月前
|
Ubuntu 前端开发 JavaScript
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
|
2月前
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
135 3
|
3月前
|
Java 应用服务中间件 Windows
windows服务器重装系统之后,Tomcat服务如何恢复?
windows服务器重装系统之后,Tomcat服务如何恢复?
65 10
|
2月前
|
Java 应用服务中间件 Linux
tomcat学习二:tomcat部署多个项目:不修改端口和修改端口 两种方式详解
这篇文章详细介绍了在Tomcat服务器上部署多个项目的方法,包括不修改端口和修改端口两种方式。
155 0
|
4月前
|
应用服务中间件 Docker 容器
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
这篇文章介绍了在Docker中安装Tomcat的过程,包括搜索Tomcat镜像、拉取镜像、目录挂载的准备、创建并挂载容器,以及如何进入容器和进行测试。文中还说明了如何将WAR包部署到Tomcat服务器并访问部署的应用。
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
|
3月前
|
前端开发 Java 应用服务中间件
react自学(6) 部署到tomcat中
react自学(6) 部署到tomcat中