Tomcat 服务器的部署(优化)及配置虚拟主机

目录

前言

一、Tomcat服务器

1.核心组件

①web容器:

② servlet容器:

③JSP容器(JAVA Scripts page):

二、Tomcat部署

1.安装JDK,配置JAVA环境

2.安装配置Tomcat

3.主要目录说明

三、Tomcat优化

1.优化启动速度

四、Tomcat虚拟主机配置

1.创建项目目录和文件

2.修改Tomcat主配置文件

总结


前言

Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。一般来说,Tomcat 虽然和 Apache 或者 Nginx 这些 Web 服务器一样,具有处理 HTML 页面的功能,然而由于其处理静态 HTML 的能力远不及 Apache 或者 Nginx,所以 Tomcat 通常是作为一个 Servlet 和 JSP 容器,单独运行在后端

一、Tomcat服务器

1.核心组件

①web容器:

提供web页面功能(以下为JAVA层面的处理,但网站的业务需要处理TCP/IP以及HTTP)

② servlet容器:

servlet 作用:处理后端业务(收到请求,会响应请求)catalina脚本:专门[管理、执行和翻译] Servlet代码的( JAVA写的)

③JSP容器(JAVA Scripts page):

提供[前端页面]展示功能( 在正常的html标签中嵌入一些java代码 ( <8JAVA代码

)JSP也会被翻译为ServLet被catal ilrTa脚本管理执行

以上共同组成tomcat

①运维:
②JAVA后端:后端主要是对于业务的控制和处理,比如访问数据库,进行数据更新查看修改等等
③JAVA前端: 前端主要是指jsp,页面显示给用户的,前端技术的话比如ajax, javascript, EL这些技术 

Java Servlet:

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

JSP(Java Server Pages):

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

 

 2.Tomcat 处理请求过程
处理请求详细过程如下:
① 用户点击网页内容,请求被发送到本机8080端口,被那里监听的 Coyote(Tomcat 连接器框架/基础环境) HTTP/1.1 Connector(连接器,用于对接请求)获得;
② 接受请求之后交给 container(容器)中的 engine (引擎)进行处理,engine 是做为容器运行的动力核心;
③ 基于引擎支撑,容器中会跑很多 host 虚拟主机/项目,这些虚拟主机中也会有很多 context(当前程序所处的环境),此处的 context 功能可以理解为:将 JAVA 前端和 JAVA 后端连接的展示的枢纽;
④ Servlet 处理完后会返回给 context;
⑤ context 返回给 Engine 引擎;
⑥ Engine 返回给端口;
⑦ 最终通过映射端口的方式将页面展现给客户

二、Tomcat部署

1.安装JDK,配置JAVA环境

在安装 Tomcat 之前必须先安装 JDK,因为 JDK 是 java 语言的软件包开发工具,其中包含了JVM(java 虚拟机),编写好的 java 源程序经过编译可形成 java 字节码,只要安装了 JDK ,就可用 JVM 解释这些字节码文件,从而保证了 java 的跨平台性

  • 启动虚拟机后关闭防火墙及强制控制访问系统
    systemctl stop firewalld
    systemctl disable firewalld
    setenforce 0
    

  • 准备好安装包,上传至/opt目录下
    [root@tomcat ~]#cd /opt/
    [root@tomcat /opt]#ls
    apache-tomcat-9.0.16.tar.gz  jdk-8u201-linux-x64.rpm  rh
    

  • 安装JDK,并设置JDK的环境变量
    cd /opt
    rpm -qpl jdk-8u201-linux-x64.rpm
    #查看指定文件的文件列表
    rpm -ivh jdk-8u201-linux-x64.rpm
    #安装
    java -version
    #显示java运行环境版本
    
    vim /etc/profile.d/java.sh
    
    export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
    #输出定义java的工作目录
    export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
    #输出指定java所需的类文件
    export PATH=$JAVA_HOME/bin:$PATH
    #输出重新定义环境变量,$PATH一定要放在$JAVA_HOME的后面,让系统先读取到工作目录中的版本信息!
    
    
    source /etc/profile.d/java.sh
    #执行脚本
    java -version
    #再次查看,检查是否执行成功
    

    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文件

  • 编写一个简单的java脚本文件来验证一下
    vim xjj.java
    
    public class xjj {
            public static void main(String[] args){
            System.out.println("Hello world!");
            }
    }
    
    
    javac xjj.java
    #进行编译
    java xjj
    #执行
    

    2.安装配置Tomcat

  • 解压软件包
    cd /opt
    tar zxvf apache-tomcat-9.0.16.tar.gz
    

  • 解压后生成文件夹,将该文件夹移动至 /usr/local/下,并改名为 tomcat
    mv apache-tomcat-9.0.16 /usr/local/tomcat
    

  • 启动Tomcat
    $创建软连接,优化开启命令,便于管理
    ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/		
    ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/
    /usr/local/tomcat/bin/startup.sh
    

  • Tomcat 默认运行在 8080 端口,可以运行 netstat 命令查看 8080 端口监听的信息

 

[root@localhost opt]# netstat -natp | grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      16690/java
  • 打开浏览器访问测试 http://192.168.126.15:8080/mark

 

3.主要目录说明

Tomcat 的主目录为 /usr/localtomcat

 

 

三、Tomcat优化

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

 

1.优化启动速度

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

vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security
#117 进行修改
securerandom.source=file:/dev/unrandom	
#/dev/random 和/dev/urandom 都是伪终端,但是/dev/urandom(随机值)提供的数据流更快
#因为默认系统会有很多外界因素的影响,造成随机性并不是很好,使用urandom优化可以提供更好的数据流

#重启生效
/usr/local/tomcat/bin/shutdown.sh 
/usr/local/tomcat/bin/startup.sh 

 

2.常用的优化相关参数如下: 

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

minSpareThreads="50" 
#最小空闲线程数为50
enableLookups="false"
#不开启反查域名
disableUploadTimeout="true"
#上传时使用超时机制
acceptCount="300" 
#线程数都被占用时,可传入最大连接请求队列为300
maxThreads="500"
#可创建的最大线程数为500
processorCache="500"
#控制Tomcat内部RequestProcessor的缓存池大小,若超过500,则会创建新的RequestProcessor实例
URIEncoding="UTF-8" 
#字符集为UTF-8
compression="on"
#开启对响应的数据进行GZIP压缩
compressionMinSize="2048"
#压缩响应最小值,开启则默认2048,只有大于该值时才会对报文进行压缩
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,image/gif,image /jpg,image/png"/>
#压缩可支持类型

四、Tomcat虚拟主机配置

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

 

1.创建项目目录和文件

  • 添加本地地址映射
    [root@tomcat /usr/local/tomcat]#vim /etc/hosts
    ......
    192.168.174.7 www.dzi.com www.dzy.com
    

  • 创建目录和文件
    [root@localhost ~]# mkdir /usr/local/tomcat/webapps/dzi
    [root@localhost ~]# mkdir /usr/local/tomcat/webapps/dzy
    [root@localhost ~]# echo "Hello dzi~" > /usr/local/tomcat/webapps/dzi/index.jsp
    [root@localhost ~]# echo "Hello dzy~" > /usr/local/tomcat/webapps/dzy/index.jsp
    

    2.修改Tomcat主配置文件

    vim /usr/local/tomcat/conf/server.xml
    
    #在165行插入以下内容
    <Host name="www.dzi.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
    <Context docBase="/usr/local/tomcat/webapps/dzi" path="" reloadable="true" />
    </Host>
    
    <Host name="www.dzy.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false"    xmlNamespaceAware="false">
    <Context docBase="/usr/local/tomcat/webapps/dzy" path="" reloadable="true" />
    </Host>
    

  • 配置文件详解
  •  

  • 使用火狐浏览器进行访问,验证配置是否成功
  •  

     

    总结

    ①Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选

  • ②在安装 Tomcat 之前必须先安装JDK。server.xml 为 Tomcat 的主要配置文件,通过配置该文件,可以修改 Tomcat 的启动端口、网站目录、虚拟主机、开启https等重要功能

    ③可以将两个或多个Tomcat server 放到 Nginx 的 upstream 中组成一个负载均衡集群,然后通过 proxy_pass 这种 Web 代理的方式在 location 中设置集群站点,然后再通过 weight 值来分别对 Tomcat server 进行权重的设置

        ④在生产环境中,Tomcat server 的硬件配置可能不尽相同,可以通过修改相应服务器的                 weight 值,对配置较高或配置较低的服务器的访问请求进行分配控制

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值