记录的好博客
总结Tomcat面试问题的四张图Tomcat系统架构---让面试官颤抖的Tomcat答案系列! Tomcat学习总结(十四) —— Tomcat常见问题
我的总结:
问: q:Tomcat提供了多种将Web项目直接放在webapps下的方法。 Tomcat会自动放置在server.xml文件中以配置Context节点并设置相关属性
在Catalina配置:confcatalinalocalhost文件下,创建包含站点名称的xml文件。 创建和设置XML。
问: servlet生命周期加载。Tomcat第一次访问servlet时,Tomcat实例为servlet的实例http://www.Sina.com/servlet 当浏览器访问servlet时,servlet调用servlet )方法处理请求http://www.Sina.com/Tomcat关闭或检测到servlet时,它调用servlet的长度此外,servlet还会在调用destroy ()方法后等待垃圾回收。 如果需要再次使用此servlet,请调用init ()方法执行初始化操作。 tomcat容器如何创建servlet类实例? 你用了什么原理? 容器启动时,将从webapps目录中的所有webapps应用程序读取web.xml文件,解析xml文件,并读取servlet注册信息。 然后,将在每个APP应用程序中注册的servlet类在初始化。(也可以在第一次请求时实例化)的servlet注册时加1,如果是正数,则从头实例化,如果不写,或loadOnStartup 0
即,在负数的情况下,在web容器启动时不进行实例化处理,在第一次调用servlet时进行实例化
这种情况与未安装loadOnStartup相同。
loadOnStartup 0
在web容器启动时进行实例化处理,从小到大、正整数从小依次进行实例化
loadOnStartup=0
如果在web容器启动时进行实例化处理,则它相当于最大整数,因此在web容器启动时最后实例化
方式一:在web.xml中添加启动加载1 /启动加载(注意:中间的数据,最小启动越快) ) ) )。
方式二、使用@WebServlet注释时,注释中直接加上loadOnStartup=1【注意:要添加@WebServlet注释设置servlet,请在web.xml文件metadata-complet】
ex:@ web servlet (value={ '/default ' },loadOnStartup=1) )。
tomcat有几种连接器的工作模式? tomcat的执行模式有三种。 修改他们的执行模式。 三种模式的成功运行可以通过查看他的启动控制台、查看启动日志或登录到他们的默认页面http://localhost:8080/来查看/其中的服务器状态。
1 ) bio
在默认模式下,性能非常差,并且没有优化的处理和支持。
2 ) nio
利用java异步io护理技术、无阻塞io技术。
要在此模式下运行,请直接修改server.xml中的Connector节点,然后按如下方式修改协议
连接器端口=" 80 "协议=" org.Apache.coyote.http 11.http 11 nio协议"
连接时间out=" 20000 " "
uri编码=" utf-8 "
useBodyEncodingForURI=”true”
enableLookups=”false”
redirectPort=”8443 /
启动后,将生效。
3 ) apr
如果安装最困难,Tomcat会以JNI的形式调用Apache HTTP服务器的核心动态链接库,以处理文件读取和网络传输操作。 这大大提高了Tomcat静态文件的处理性能。
必须安装apr和native,直接启动时支持apr。 以下修改是多余的,所以我们只是扩展知识,但需要安装apr和本地
在nio模式下,将协议更改为org.Apache.coyote.http 11.http 11 apr协议