Tomcat

Web Container包含的组件有:

JDK, Servlet, JSP等

Web Container实现:

商业实现:
  WebSphere(IBM)
  WebLogic(BEA --> Oracle)
  Oc4j
  Glassfish
  Geronimo
  JOnAS
  JBoss

开源实现:
  Tomcat
  jetty
  resin

Tomcat的核心组件:

catalina: servlet container
Coyote: http connection
Jasper: JSP Engine

Tomcat的开发语言: JAVA

Tomcat Instance: 运行中的tomcat进程(java进程)

Server: 即一个tomcat实例
Service: 用于将connector组件关联至engine组件,一个service只能包含一个engine组件和一个或多个connector组件;
Engine: Tomcat的核心组件, 用于运行jsp或servlet代码
Connector: 接入并解析用户请求,将请求映射为Engine中运行的代码;之后,将运行结果构建成响应报文。
http, ajp
Host:类似httpd中的虚拟主机
Context:类似于httpd中的alias;
注意:每个组件都由”类“来实现,有些组件的实现还不止一种; *类组件: server 服务类组件: service 容器类组件: 即可以部署webapp的组件,engine, host, context 连接器组件:connector 被嵌套类组件: valve, logger, realm
上面的组件用xml格式来表示的话,大体如下:
<server>
  <service>
    <connector />
    <connector />
    ...
    <engine>
      <host>
        <context />
        ...
      </host>
      ...
    </engine>
  </service>
</server>

Tomcat的运行模式:

standalone: 通过内置的web server(http connector)来接收客户端请求
proxy:由专门的web server服务客户端的http请求,;
  in-process: 部署于同一主机
  network: 部署于不同主机

安装Tomcat

官方站点:http://tomcat.apache.org
这里下载的版本是tomcat 8.5.63:https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.63/bin/apache-tomcat-8.5.63.tar.gz

部署前提:

jdk:
  Oracle JDK
  OpenJDK
这里用的是 Oracle JDK:jdk-8u102-linux-x64.rpm

安装jdk:

# rpm -ivh jdk-8u102-linux-x64.rpm

添加环境变量

# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH
# . /etc/profile.d/java.sh

安装tomcat

# tar xf apache-tomcat-8.5.63.tar.gz -C /usr/local/
# cd /usr/local/
# ln -sv apache-tomcat-8.5.63 tomcat
# cd tomcat/
# vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
# . /etc/profile.d/tomcat.sh
测试tomcat: # configtest.sh # catalina.sh version # catalina.sh configtest # catalina.sh --help # catalina.sh start

Tomcat的目录结构:

bin:脚本及启动时用到的类
lib:类库
conf:配置文件
logs:日志文件
webapps: 应用程序默认部署目录
work:工作目录
temp:临时文件目录

配置文件:

server.xml:主配置文件
context.xml:每个webapp都可以有专用的配置文件。这些配置文件通常位于webapp应用程序目录下的WEB-INF目录中,用于定义会话管理器、JDBC等,
conf/contxt.xml是为各webapp提供默认配置
web.xml:每个webapp“部署”之后才能被访问;此文件则用于为所有的webapp提供默认部署相关的配置;
tomcat-users.xml:用户认证的账号和密码配置文件
catalina.policy:当使用-security选项启动tomcat实例时会读取此配置文件来实现其安全运行策略;
catalina.properties:java属性的定义文件,用于设定类加载器路径等,以及一些JVM性能相关的调优参数;
logging.properties:日志相关的配置文件;

 

上一篇:Windows环境tomcat安装配置教程


下一篇:Tomcat异常: Unable to process Jar entry [module-info.class] from Jar