栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

tomcat部署及优化

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

tomcat部署及优化

文章目录
    • 一、tomcat概述
    • 二、Tomcat的组件构成
    • 三、Tomcat介绍
      • 1、Tomcat核心组件
      • 2、Tomcat处理请求过程
    • 四、Tomcat部署
      • 1.安装jdk,并设置jdk环境变量
      • 2.测试
    • 五、安装启动Tomcat
      • 1、解压tomcat
      • 2、优化管理
    • 六、Tomcat 虚拟主机配置

一、tomcat概述

、Tomcat概述
Tomcat是一款免费、开放源代码的Web应用服务器,是Apache软件基金会的一个核心开源项目,属于轻量级应用服务器。

Apache:Apache软件基金会(也就是Apache Software Foundation,简称为ASF),是专门为支持开源软件项目而办的一个非盈利性组织,官网为:https://tomcat.apache.org/

二、Tomcat的组件构成

Tomcat由一系列的组件构成,其中核心的组件有三个
(1)Web容器:完成Web服务器的功能HTTPHTTPS请求的接受和响应。
(2)Servlet容器:由名称为catalina的脚本来处理Servlet代码(具体的一个任务,从数据库中拿取数据给与前端)。
(3)JSP容器:用于将JSP动态网页翻译成Servlet代码index.htmlindex.phpindex.jsp

三、Tomcat介绍 1、Tomcat核心组件

(1)Web容器

负责WEB服务的TCP/IP、HTTP等协议响应、处理(nginx处理静态页面的应用交互)

(2)JSP容器(JAVAscriptspage)

Tomcat中做为JAVA前端展示的一个组件index.jsp,因为index.jsp标签,标签中会嵌套了很多JAVA代码,书写形式是,<%开头以%>,是一种servlet(java后端逻辑业务的任务)。

JSP(全称:JavaServerPages)是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。JSP是一种Javaservlet,主要用于实现Javaweb应用程序的用户界面部分。JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。JSP容器内提供了多个以index.jsp为结尾的JAVA前端页面展示,而index.jsp中由很多HTML标签,HTML标签中会嵌套很多JAVA代码,这些JAVA代码,最终会被翻译为Servlet代码,(而本身JSP容器不具备解析与分析代码的功能,所以会给交给Servlet容器)。

(3)Servlet容器

Servlet翻译index.jsp中这些java代码,执行一些servlet任务操作,比如数据库交互、加密、支付宝、人脸识别,处理完后,将这些数据返回给JSP,通过jsp中的index.jsp展示出来(JAVA)。动态交互处理,会将JSP传递过来的代码翻译为Servlet,由catalina脚本帮忙处理的servlet代码,主要处理后端逻辑业务(比如与数据库交互、加密、支付宝、人脸识别等),catalina实际处理的是Servlet代码,而Servlet代码是由Java编写的。

2、Tomcat处理请求过程

(1)用户点击网页内容,请求被发送到本机端口8080,被在那里监听的Coyote(Tomcat 连接器框架/基础环境) HTTP/1.1 Connector(连接器,用于对接请求)获得。

(2)接受请求之后交给container(容器)中的engine进行处理,engine(引擎)是做为容器运行的动力核心。

(3)基于引擎支撑,容器中会跑很多host虚拟主机/项目,这些虚拟主机中也会有很多context(当前程序所处的环境),此处的context功能可以理解为:将JAVA前端和JAVA后端连接的展示的枢纽。

(4) Servlet处理完后会返回给context。

(5)context返回给engine引擎。

(6)engine返回给端口。

(7) 端口最后将页面展现给用户。

四、Tomcat部署 1.安装jdk,并设置jdk环境变量
[root@localhost opt]# rpm -ivh jdk-8u201-linux-x64.rpm
 
[root@localhost opt]# java -version     #查看当前系统环境下java版本
 
openjdk version "1.8.0_181"
 
OpenJDK Runtime Environment (build 1.8.0_181-b13)
 
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
 
[root@localhost opt]# vim /etc/profile.d/java.sh     #编辑环境变量
 
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64 #定义JAVA_HOME变量的路径
 
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar #指定CLASSPATH变量的路径
 
export PATH=$JAVA_HOME/bin:$PATH #将JAVA的bin目录加入到PATH变量

CLASSPATH:编译、运行Java程序时(tomcat),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文件。

[root@localhost opt]# source /etc/profile.d/java.sh #加载生效

[root@localhost opt]# java -version #查看版本

java version “1.8.0_201”

Java™ SE Runtime Environment (build 1.8.0_201-b09)

Java HotSpot™ 64-Bit Server VM (build 25.201-b09, mixed mode)

2.测试

编个脚本测试一下

public class Hello {
 
  public static void main(String[] args){
 
    System.out.println("Hello World!");
 
  }
 
}
 
[root@localhost opt]# javac Hello.java     #(javac 基础命令,用于编译,用于将java--》class)
 
[root@localhost opt]# java Hello    #启动脚本
 
Hello World!
五、安装启动Tomcat 1、解压tomcat
cd /opt
tar zxvf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat
2、优化管理
[root@localhost opt]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/     #启动
 
[root@localhost opt]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/     #关闭

(4)开启服务

[root@localhost tomcat]# startup.sh
Using CATALINA_base:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@localhost tomcat]# netstat -natp | grep  8080
tcp6       0      0 :::8080                 :::*                    LISTEN      26348/java     


(5)查看页面

(6)优化 Tomcat 启动速度

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

[root@localhost ~]# vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security
 
securerandom.source=file:/dev/urandom    #修改第117行,/dev/random和/dev/urandom都是伪终端,

(7)JRE默认使用 /dev/random作为随机数来源,当熵池大小不够的时候,random会很慢,造成随机数生成调用阻塞。
8)熵池(安全方向,随机值)

概念:linux是根据系统的熵池来产生随机数的。熵池就是系统当前的环境噪音,环境噪音的来源很多,键盘的输入、鼠标的移动、内存的使用、文件的使用量、进程数量等等。当系统的熵不够大的时候,则系统产生的随机数随机效果就不是很好,也就是说更容易被人猜测出来。
(9)重启tomcat
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

六、Tomcat 虚拟主机配置

很多时候公司会有多个项目需要运行,那么肯定不可能是一台服务器上运行多个Tomcat服务,这样会消耗太多的系统资源。此时,就需要使用到Tomcat虚拟主机。例如现在新增两个域名www.xgp.com和www.xb.com,希望通过这两个域名访问到不同的项目内容。(tomcat作为web服务器)
1、创建xgp和xb项目目录和文件

(2)创建对应的目录和文件

[root@localhost /]# mkdir /usr/local/tomcat/webapps/xgp
[root@localhost /]# mkdir /usr/local/tomcat/webapps/xb
[root@localhost /]# echo "this is xgp page" > /usr/local/tomcat/webapps/xgp/index.jsp
[root@localhost /]# echo "this is xb page" > /usr/local/tomcat/webapps/xb/index.jsp

开启关闭

[root@localhost /]# vim /usr/local/tomcat/conf/server.xml
[root@localhost /]# vim /usr/local/tomcat/conf/server.xml

浏览器访问验证

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/337661.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号