web服务之Tomcat

目录

一、Tomcat介绍

二、Tomcat组件

1、Tomcat组件

2、JavaServlet

3、JSP容器

三、Tomcat部署步骤

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

2、安装 JDK

3、设置 JDK 环境变量

4、安装启动 Tomcat

5、优化 Tomcat 启动速度

tomcat的主要目录

四、Tomcat 虚拟主机配置

1、创建test1和test2项目目录和文件

2、修改 Tomcat 主配置文件

3、浏览器访问验证

五、Tomcat 优化

1、Tomcat配置文件参数优化

  1. 修改配置文件

一、Tomcat介绍

免费的、开放源代码的Web应用服务器,属于轻量级应用服务器

在中小型系统和并发访问用户不是很多的场合下被普遍使用

是开发和调试JSP程序的首选

Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目

由Apache、Sun和一些公司及个人共同开发而成

深受Java爱好者的喜爱,并得到部分软件开发商的认可

目前比较流行的Web应用服务器

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

二、Tomcat组件

  1. Tomcat组件

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

  • Web容器------完成Web服务器的功能。

  • Servlet 容器------名字为catalina, 用于处理Servlet代码。

  • JSP容器------用于将JSP动态网页翻译成Servlet代码。

  1. JavaServlet

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

  1. JSP容器

JSP全称:Java Server Pages

是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头 以%>结束。JSP是一 种Java servlet,主要用于实现Java web应用程序的用户界面部分。

JSP 通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

三、Tomcat部署步骤

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

相关安装包下载链接:https://pan.baidu.com/s/1Ezx4ifyeruLMnnOWiXQghQ

提取码:073v

apache-tomcat-9.0.16.tar.gz

jdk-8u201-linux-x64.rpm

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

systemctl stop firewalld.service

systemctl disable firewalld.service

setenforce 0

  1. 安装 JDK

#查询指定软件包的文件列表

rpm -qpl jdk-8u201-linux-x64.rpm

#安装

rpm -ivh jdk-8u201-linux-x64.rpm

java -version

  1. 设置 JDK 环境变量

#profile.d相当于profile的扩展地盘

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

-------java.sh中补充的知识点-----------------------------------

CLASSPATH:编译、运行Java程序时,JRE 会去该变量指定的路径中搜索所需的类( .class)文件。

dt.jar:是关于运行环境的类库,主要是swing 的包。

tools.jar:主要是一 些 jdk 工具的类库,包括 javac, java,javap, javadoc等。

JDK:java development kit ( java开发工具)

JRE:java runtime environment ( java运行时环境)

JVM:java virtuak machine (java虚拟机) ,使 java程序可以在多种平台上运行class文件。

到这里就设置好了,我们也可以编写一个java脚本来验证安装

vim abc.java

#编写一个java程序,输出“hello world!”

public class abc {

public static void main(String[] args){

System.out.println("Hello World!");

}

}

#检测JDK环境是否设置成功

javac abc.java

java abc

  1. 安装启动 Tomcat

cd /opt/

tar zxvf apache-tomcat-9.0.16.tar.gz

mv apache-tomcat-9.0.16 /usr/local/tomcat

##启动tomcat##

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

netstat -natp | grep 8080

#使用浏览器访问Tomcat的主页

http://192.168.163.10:8080

  • 访问Tomcat的主页

  1. 优化 Tomcat 启动速度

第一次启动 tomcat 可能会发现 tomcat 启动很慢,默认情况下可能需要几十秒,此时可以修改 jdk 参数进行优化。

vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security

#修改117行;##/dev/random和/dev/urandom都是伪终端,但是/dev/urandom提供的数据流更快

securerandom.source=file:/dev/urandom

#创建一个软连接,将tomcat的命令放入/usr/local/bin

ln -s /usr/local/tomcat/bin/* /usr/local/bin/

#重启Tomcat

shutdown.sh

startup.sh

tomcat的主要目录

  • 查看目录命令 ------ ll /usr/local/tomcat/

四、Tomcat 虚拟主机配置

很多时候公司会有多个项目需要运行,那么肯定不可能是一台服务器上运行多个Tomcat服务,这样会消耗太多的系统资源。此时,就需要使用到Tomcat虚拟主机。例如现在新增两个域名www.test1.comwww.test2.com,希望通过这两个域名访问到不同的项目内容。

  1. 创建test1和test2项目目录和文件

mkdir /usr/local/tomcat/webapps/test1

mkdir /usr/local/tomcat/webapps/test2

echo 'this is test1 page!' > cd /usr/local/tomcat/webapps/test1/index.jsp

echo 'this is test2 page!' > /usr/local/tomcat/webapps/test2/index.jsp

  1. 修改 Tomcat 主配置文件

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

#165行

<Host name="www.test1.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">

<Context docBase="/usr/local/tomcat/webapps/test1" path="" reloadable="true" />

</Host>

<Host name="www.test2.com" appBase="webapps" unpackWARs="true"

autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">

<Context docBase="/usr/local/tomcat/webapps/test2" path="" reloadable="true" />

</Host>

#重启服务;命令路径优化后可以直接使用shutdown.sh和startup.sh

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

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

#----------------参数解释-----------------------------

Host name :主机名

appBase : Tomcat程序工作目录,相对路径为webapps,绝对路径为/usr/local/tomcat/webapps

unpackWARs :是否解压war包

autoDeploy :指示Tomcat运行时,如有新的WEB应用是否允许自动部署

xmlValidation :是否验证xml文件执行有效性检验的标志

xmlNamespaceAware :是否启用xml命名空间,设置该值与xmlValidation为true,表示对web.xml文件执行有效性检验

docBase : WEB应用的目录

path:设置访问的URI为WEB应用的根目录

reloadable :是否在程序有改动时重新载入

  1. 浏览器访问验证

echo "192.168.163.10 www.test1.com www.test2.com" >> /etc/hosts

浏览器访问 http://www.test1.com:8080 页面显示 this is test1 page!

浏览器访问 http://www.test2.com:8080 页面显示 this is test2 page!

五、Tomcat 优化

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

  1. Tomcat配置文件参数优化

常用的优化相关参数如下

以上是一些常用的配置参数,还有好多其它的参数设置,还可以继续深入的优化,HTTP Connector 与AJP Connector 的参数属性值,可以参考官方文档的详细说明进行学习。

  1. 修改配置文件

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

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443"

#72行插入

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" />

#优化就直接用shutdown.sh和startup.sh

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值