菜鸟学Linux 第102篇笔记 tomcat + JDK-阿里云开发者社区

开发者社区> 开发与运维> 正文

菜鸟学Linux 第102篇笔记 tomcat + JDK

简介:

菜鸟学Linux 第102篇笔记 tomcat + JDK




内容总览

Java体系

JDK (Java Development Kit) java SE, java EE

Tomcat

tomcat配置文件

tomcat 应用程序“部署”

webapp体系结构

webapp的归档格式

tomcat的运行方式



Java体系

java程序设计语言

java API

java class文件格式

java VM


JDK (Java Development Kit)

java SE: JDK + 额外类库,面向桌面级应用

java EE: Java SE + 企业级类库

servlet, jsp, jmx

servlet 类库

servlet container

jsp 类库

<% %>



Tomcat

借助JDK + servlet, jsp 

Java EE不完整的实现


web container

Jetty, Resin

Websphere, weblogic, JBoss, Glassfish, GonAS


tomcat:

server.xml

顶级类: server

容器类: engine, host, context

服务类: service

连接器: connector (http,ssl,ajp) apache jserv protocol

被嵌套类: valve, logger, realm

<server>

<service>

<connector />

<connector />

<engine>

<host>

<context />

<context />

</host>

<host>

</host>

</engine>


</service>

</server>


server status:

状态查看

app部署

host manager:

虚拟主机管理



安装目录

bin

conf

server.xml, tomcat-users.xml, web.xml

logs

lib

temp

webapps

work


tomcat配置文件

server.xml

context.xml 为部署于此tomcat实例上的所有web应用程序提供的默认配置文件,每个webapp

都可以使用自己独有的context.xml 通常放置于webapp目录中的META-INF目录中

常用于定义会话管理器、realm以及JDBC等

web.xml 部署描述符,通常用于为webapp提供基本的的servlet定义和MIME映射表等

tomcat-users.xml 用户控制

catalina.policy 当基于-security选项启动tomcat实例时会读取此配置文件,安全策略配置

catalina.properties java属性定义文件,设定类加载路径、安全包列表和一些调整性能参数

logging.properties 日志相关配置


tomcat 应用程序“部署”

部署是指将webapp及其所依赖类库等装载进tomcat实例上,以便接受用户请求

部署方式:

静态方式,在tomcat启动之前进行的webapp部署

动态方式,在不中止tomcat运行的前提下,通过tomcat manager或其它的命令行工具进行

  部署


部署是由一类“操作”组成:

deploy 将webapp的源文件放置于目录目录、配置tomcat服务器能够基于某context路径

   访问此webapp,并将其特有的类由类加载器进行装载等

redeploy 重新部署,主要用于升级时

undeploy 取消部署,停止应用程序,并从tomcat实体上移除其部分文件和部署名

stop 停止

start 将停止的webapp再次启动


部署方式

tomcat manager

ant script

TCD


war类归档程序部署实现,将归档文件复制到$CATALINA_BASE/webapps目录并重启即可

未归档  直接放置在上述目录中即可


webapp体系结构

webapp有特定的组织格式,是一种层次性目录结构 通常包含了servlets代码文件,jsp页面

文件、类文件、部署描述符文件等等,一般会打包成归档格式


/ web应用程序的根目录

/WEB-INF 此webapp的私有资源目录,通常web.xml和context.xml放置在此处

/WEB-INF/class 此webapp自有的类

/WEB-INF/lib 此webapp自有能够被打包为jar格式的类


webapp的归档格式

EJB类归档的扩展名为.jar

web应用程序的归档扩展名为.war

资源适配器的扩展名.rar (resource adapters)

企业级应用程序的扩展名.ear (enterprise archive)

web服务的扩展名通常为.ear或.war


tomcat的运行方式

standalone configure

request --> web server(tomcat) --> servlet container


进程间配置

独立网络配置



apache与tomcat连接器通信的模块有两个

mod_jk: apache/1.3, apache/2.0

mod_proxy: apache/2.2+


tomcat的连接器协议有两种

http

ajp


LAMT:

apache(mod_jk, ajp) + tomcat(ajp connector)

apache(mod_proxy,(http,https,ajp)) + tomcat(http,https, ajp)


LNMT:

nginx + tomcat(http, https)

本文转自Winthcloud博客51CTO博客,原文链接http://blog.51cto.com/winthcloud/1899162如需转载请自行联系原作者


Winthcloud

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章