Tomcat的常见的组件与部署
来源:互联网 发布:淘宝首页装修教程视频 编辑:程序博客网 时间:2024/05/29 10:40
Tomcat的目录结构分析:
server.xml与Tomcat的架构:
Tomcat对应的组件的实现:
Connector组件:
Coyote实现很多种不同的Connector组件,其中最常见的也是Tomcat,默认的connector是BIO Connector
BIO Connector:使用较传统的阻塞式IO的操作方式,对应实现方式为javaIO的实现
Container组件:
Catalina实现Container容器的组件,用户的代码最终由Catalina执行
Tomcat个组件协调工作完成用户请求处理流程:
说明:浏览器发送请求,这个请求使用Connector接收并且处理,Connector会完成Socket方面的操作Connector会从Socket中读取数据,读取到请求之后会对请求进行解析,解析完成之后会交给Container进行处理,Container会根据解析出来的内容进行响应(文本、图片等静态内容还是根据代码生成的动态内容等)最终Container生成的内容通过Connector发送到浏览器
Tomcat的常见配置项
对于最配置文件进行修改的不可逆操作时候,记得先备份在修改Connector的配置参数
port:http监听的是80端口,而Tomcat默认监听的8080端口
address:ip地址
protocol:默认的是http1.1,在性能调优的时候可能会改用
connectionTimeout:客户端连接超时时间
acceptCount:所有的线程处理请求的时候,没有空闲线程存在,配置线程排队的长度,队列最大的是多大
如果队列超过了队列的长度,则其余的请求会被拒绝,默认为100
maxConnections:支持同时发送请求的最大连接数,默认BIO Connector与线程池相关
线程池
线程池在服务端开发必须知道的,线程的创建和销毁都比较耗时,假如来一个请求就创建一个线程,请求结束之后就把线程销毁,对系统性能来说损耗较大,实际开发中可以先创建一组线程等待客户的请求,当有请求时直接用线程池的线程,结束之后再放到池子里,这样就减少了线程的创建和销毁的过程线程池主要配置的参数:
minSpareThreads:最小空闲线程数目maxThreads:最大线程数
当同时请求数目超过线程池的线程数目,则后面的请求只能排队等待
当所有请求结束之后,线程池子会留有minSpareThreads
tomcat就是使用这样的弹性线程池
线程池的配置:
线程池的配置项<Executor>:
minSpareThreads
maxThreads
Connector配置线程池:
指定依赖的线程池配置(优先)
直接指定线程池的配置参数
日志的配置:
日志的作用:Tomcat的运行情况获知
调试利器:定位问题
Tomcat日志分类:
系统运行时的日志:捕获系统运行时的异常信息
访问日志:记录所有的请求访问
应用日志:应用程序打印日志
访问日志的配置文件也是server.xml
directory:访问日志的相对路径
部署web应用
手动部署
将项目直接考到tomcat目录下的webapps目录下项目应该按照一定格式编写:
web项目格式:
------WEB-INF:
静态资源可供外界访问的(html,img,avi等)
------classes:存放字节码文件
------lib:存放jar包
web.xml:一定格式的配置文件
War包部署:
将项目打成war包,在将项目上传到到tomcat目录下的webapps目录下打war包的格式:
cmd到你要打war包项目的路径下
输入命令:(格式为)
Jar -cvf 项目名.war . 最后的.表示当前目录下的所有文件夹以及文件
1 0
- Tomcat的常见的组件与部署
- Maven部署Tomcat插件的常见错误
- Tomcat的安装与部署
- AJAX组件-dwr 的部署与实现
- Tomcat应用部署的常见方式和问题
- Tomcat部署项目的几种常见方式
- 边学边谈 ---- Tomcat 6 的配置与部署
- Linux下Tomcat的安装与部署
- Tomcat 常见部署方法
- c++组件与常见的几种类的类型
- tomcat的部署
- tomcat的热部署
- Tomcat的热部署
- 部署新的tomcat
- Tomcat的Web部署
- tomcat的环境变量部署
- tomcat的热部署
- Tomcat的部署安装
- Usaco 生气的奶牛 - (dp&滑窗)|(二分&贪心check)
- response.getWriter().write 中文乱码问题
- X86汇编快速入门
- zookeeper Curator客户端
- 关联规则浅谈以及Apriori算法matlab实现
- Tomcat的常见的组件与部署
- SQLServer数据库通用访问类
- aliyun服务器 在 centos下 挂载新硬盘
- Android4.4之后发送或接收短信后自动删除问题
- 258. Add Digits
- 操作系统基础
- Java动态加载jar文件
- 棋盘问题
- zsh 安装和使用, 以及安装主体