|
菜鸟学Linux 第102篇笔记 tomcat + JDK
内容总览
Java体系
JDK (Java Development Kit) java SE, java EE
Tomcat
tomcat配置文件
tomcat 应用程序“部署”
webapp体系结构
webapp的归档格式
tomcat的运行方式
Java体系
java程序设计语言
java API
java> 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 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)
|
|
|