tomcat

Tomcat介绍:
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为8.0.0-RC1 (alpha) Released。

Tomcat 的安装:
Tomcat:事先部署JDK
方法一:
Oracle JDK:

              安装相应版本的rpm包;

                    jdk-VERSION-OS-ARCH.rpm

              例如:jdk-1.8.0_25-linux-x64.rpm    centos7系统自带

             yum -y install java-1.8.0-openjdk-devel

             java -version 显示java程序的版本信息

         注意:安装完成后,要配置JAVA_HOME环境变量,指向java的安装路径;

              或者直接官网下载RPM包:

                    lftp 172.16.0.1

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

                     vim /etc/profile.d/java.sh

                    export JAVA_HOME=/usr/java/latest

                    export PATH=$JAVA_HME/bin:$PATH

           OpenJDK:

                 AVA_HOME=/usr

           Oracle JDK:

                JAVA_HOME=/usr/java/jdk_VERSION

        通过rpm包,安装tomcat 8080端口:

              yum list all tomcat*

              yum install tomcat tomcat-lib tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps

              systemctl start tomcat.service

              ss -tnlp

      rpm包安装的程序环境:

          配置文件目录:/etc/tomcat

          主配置文件:server.xml

          webapps存放位置:/var/lib/tomcat/webapps/

               examples

               manager

               host-manager

               docs

               Unit File:tomcat.service

          环境配置文件:/etc/sysconfig/tomcat 调整jdk内存使用大小等初始值

      方法二:
                 通过直接展开tar包,

                        lftp 172.16.0.1/pub

                        cd Sources/7.x86_64/tomcat/

                        mget apache-tomcat-7.0.78.tar.gz

                        tar xvf apache-tomcat-7.0.78.tar.gz -C /usr/local

                        cd /usr/local

                        ln -sv apache-tomcat-7.0.78 tomcat

                        cd tomcat/bin

                        vim /etc/profile.d/tomcat.sh

                        export CATALINA_BASE=/usr/local/tomcat

                        export PATH=$CATALINA_BASE/bin:$PATH

                        catalina.sh –help

                        catalina.sh start

          切换到普通用户运行tomcat :

                       catalina.sh stop

                       useradd -r tomcat

                       chown -R tomcat:tomcat /usr/local/tomcat/*

                        su – tomcat -c ‘catalina.sh start’ 切换到普通用户运行

          tomcat程序环境:
                   tomcat的目录结构:

                         bin:脚本,及启动时用到的类;

                         conf:配置文件目录;主配置文件server.xml

                         lib:库文件,Java类库,jar;

                         logs:日志文件目录;

                         temp:临时文件目录;

                         webapps:webapp的默认目录;

                         work:工作目录;存放编译后的字节码文件;

                tomcat的配置文件构成:

                        server.xml:主配置文件;

                         web.xml:每个webapp只有“部署”后才能被访问,它的部署方式通常由web.xml进行定                                                     义,其存放位置为WEB-INF/目录中;此文件为所有的webapps提供默认部署相                                               关的配置;

                         context.xml:每个webapp都可以使用的配置文件,它通常由专用的配置文件context.xml                                                      来定义,其存放位置为WEB-INF/目录中;此文件为所有的webapps提供默认                                                      配置;

                          tomcat-users.xml:用户认证的账号和密码文件;

                          catalina.policy:当使用-security选项启动tomcat时,用于为tomcat设置安全策略;

                          catalina.properties:Java属性的定义文件,用于设定类加载器路径,以及一些与JVM调                                                                 优相关参数;

                           logging.properties:日志系统相关的配置

    Tomcat的核心组件:server.xml
                        <Server>

                                 <Service>

                                          <connector/>

                                          <connector/>

                                             …

                                           <Engine>

                                                    <Host>

                                                            <Context/>

                                                             <Context/>

                                                                  …

                                                      </Host>

                                                       <Host>

                                                            …

                                                        </Host>

                                                            …

                                              </Engine>

                                       </Service>

                              </Server>

             每一个组件都由一个Java“类”实现,这些组件大体可分为以下几个类型:

                            顶级组件:Server

                             服务类组件:Service

                             连接器组件:http, https, ajp(apache jserv protocol)

                              容器类:Engine, Host, Context 部署应用程序的组件

                               被嵌套类:valve, logger, realm, loader, manager, …

                               集群类组件:listener, cluster, …

         JSP WebAPP的组织结构:
                       /: webapps的根目录

                             index.jsp:主页;

                             WEB-INF/:当前webapp的私有资源路径;通常用于存储当前webapp的

                             web.xml和context.xml配置文件;

                              META-INF/:类似于WEB-INF/;

                              classes/:类文件,当前webapp所提供的类;

                               lib/:类文件,当前webapp所提供的类,被打包为jar格式;

                     webapp归档格式:

                                   .war:webapp 归档文件

                                   .jar:EJB的类打包文件(类库);

                                   .rar:资源适配器类打包文件;

                                    .ear:企业级webapp;

部署(deploy)webapp的相关操作:
deploy:将webapp的源文件放置于目标目录(网页程序文件存放目录),配置tomcat服务器能够 基于web.xml和context.xml文件中定义的路径来访问此webapp;将其特有的类和依赖的类通过 class loader装载至JVM;

         部署有两种方式:
                  自动部署:auto deploy

                  手动部署:

                       冷部署:把webapp复制到指定的位置,而后才启动tomcat;

                       热部署:在不停止tomcat的前提下进行部署;

                              部署工具:manager、ant脚本、tcd(tomcat client deployer)等;

               undeploy:拆除(反部署),停止webapp,并从tomcat实例上卸载webapp;

               start:启动处于停止状态的webapp;

               stop:停止webapp,不再向用户提供服务;其类依然在jvm上;

                redeploy:重新部署;

实验:手动提供一测试类应用,并冷部署:
环境:centos7服务器一台(172.16.252.18)

关闭防火墙,和selinux

                   yum -y install java-1.8.0-openjdk-devel

                   yum install tomcat tomcat-lib tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps

                  #systemctl stop tomcat.service

                  # mkidr -pv /usr/share/tomcat/webapps/test/{classes,lib,WEB-INF,META-INF}

                   创建文件/usr/share/tomcat/webapps/test/index.jsp

                            <%@ page language=”java” %>

                           <%@ page import=”java.util.*” %>

                            <html>

                                  <head>

                                       <title>Test Page</title>

                                  </head>

                                  <body>

                                        <% out.println(“hello world”);

                                          %>

                                   </body>

                            </html>

                   #systemctl start tomcat.service

          访问测试:
                        clipboard

         Manager 热部署:7
           vim /etc/tomcat/tomcat-users.xml 

8

       再点击Manager   App

           输入用户名:tomcat 密码:tomcat

9

进行WAR 文件部署: 基于上面实验的基础上
在物理服务器上:

                lftp 172.16.0.1/pub

               cd Sources/7.x86_64/tomcat

                mget solo-2.2.0.war 下载solo-2.2.0.war 到物理机

         10

上图中,把 solo-2.2.0.war上传,然后Deploy

简单运用先介绍到这,后期会继续完善tomcat 的进阶配置,以及Tomcat 负载均衡集群!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值