Java学习笔记(七)-tomcat

**

Tomcat的结构

Tomcat的最顶层容器是Server及服务器其下有多个Service用于提供服务,
每个Service包括一个Container和多个Connector
Connector用于处理连接相关的事情,并提供Socket与Request和Response相关的转化;
Container用于封装和管理Servlet,以及具体处理Request请求
(图片转载https://blog.csdn.net/qq_38245537/article/details/79009448)
图片转载https://blog.csdn.net/qq_38245537/article/details/79009448
**
**

Tomcat的类加载器

1.Bootstrap 引导类加载器:加载JVM启动所需的类,以及标准扩展类(位于jar/lib/ext上)
2.System 系统类加载器:加载Tomcat启动时的类,比如bootstrap.jar通常在catalina.bat或者catalina.sh中指定。指定位置位于CATALINA_HOME/bin下。
3.Common 通用类加载器:加载tomcat使用以及应用通用的一些类,位于CATALINA_HOME/lib下,比如servlet-api.jar
4.webapp应用类加载器:每个应用在创建后,都会创建一个唯一的类加载器。该类加载器会加载位于WEB-INF/lib下的jar文件中的class和WEB-INF/classes下的class文件。
**
**

Tomcat的线程模型

分别为NIO、BIO、AIO、ARP
前三个之前的文章已有涉及,ARP为tomcat以JNI的形式调用http服务器的核心动态链接库来处理文件读取和网络传输操作

**
**

Tomcat的调优9

涉及四个方面,吞吐量、响应时间、CPULoad、内存使用情况
-Server:因为Tomcat默认是java-client模式运行,添加server后表示以真实的production的模式运行,将拥有更大、更高的并发处理能力,更快、更强的JVM垃圾回收机制,可以获得更多的负载和吞吐量等等
-Xms -Xmx -Xmn-Xss即JVM的的一些参数之前文章有提过,
URIEncoding=”UTF-8”:使得tomcat可以解析含有中文名的文件的url
minSpareThreads:最小备用线程数,tomcat启动时的初始化的线程数
maxSpareThreads:如果空闲状态的线程数多于设置的数目,则将这些线程中止,减少这个池中的线程总数。
connectionTimeout:网络连接超时时间毫秒数
maxThreads:Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数,即最大并发数。
useURIValidationHack:设成"false",可以减少它对一些url的不必要的检查从而减省开销。
Tomcat可以配置gzip压缩(HTTP压缩)功能原理是,在客户端请求网页后,从服务器端将网页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览
**

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值