目录
前言
1、Tomcat的缺省端口是多少,怎么修改?
2、tomcat 有哪几种Connector 运行模式(优化)?
3、Tomcat有几种部署方式?
4、tomcat容器是如何创建servlet类实例?用到了什么原理?
5.tomcat 如何优化?
6.内存调优
7.垃圾回收策略调优
8.添加JMS远程监控
9.专业点的分析工具有
10.关于Tomcat的session数目
11.监视Tomcat的内存使用情况
12.打印类的加载情况及对象的回收情况
13.Tomcat一个请求的完整过程
14.Tomcat工作模式?
15.共享session处理
最后
前言
在工作中,作为 Java 开发的程序员,Tomcat 服务器是大家常用的,也是很多公司现在正在用的。但是,在系统并发量比较大的情况下,Tomcat 就会出现卡死和自动关闭等问题。如何优化 Tomcat,让它更高效的运行就成了问题,在本次面试题分享中,我将为你解答如何更好的提升 Tomcat 性能。
小编分享的这份金三银四Java后端开发面试总结包含了JavaOOP、Java集合容器、Java异常、并发编程、Java反射、Java序列化、JVM、Redis、Spring MVC、MyBatis、MySQL数据库、消息中间件MQ、Dubbo、Linux、ZooKeeper、 分布式&数据结构与算法等26个专题技术点,都是小编在各个大厂总结出来的面试真题,已经有很多粉丝靠这份PDF拿下众多大厂的offer,今天在这里总结分享给到大家!【持续更新中!】
完整版Java面试题地址:2021最新面试题合集集锦。
序号 | 专题 | 内容 | 链接地址 |
1 | 中间件 | 【金三银四】Java中间件面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/114002362 |
2 | 微服务 | 【金三银四】Java微服务面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/113923549 |
3 | 并发编程 | 【金三银四】Java并发编程面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/113895576 |
4 | Java基础 | 【金三银四】Java基础知识面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115146056 |
5 | Spring Boot | 【金三银四】Spring Boot面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115186811 |
6 | Redis | 【金三银四】Redis面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115188010 |
7 | Spring MVC | 【金三银四】Spring MVC面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115220638 |
8 | Spring Cloud | 【金三银四】Spring Cloud面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115220987 |
9 | MySQL优化 | 【金三银四】MySQL优化面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115254620 |
10 | JVM | 【金三银四】JVM性能调优面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115283079 |
11 | Linux | 【金三银四】Linux面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115283583 |
12 | Mybatis | 【金三银四】Mybatis面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115285732 |
13 | 网络编程 | 【金三银四】TCP,UDP,Socket,Http网络编程面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115464896 |
14 | 设计模式 | 【金三银四】设计模式面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115466449 |
15 | 大数据 | 金三银四】大数据面试题100道(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115484939 |
16 | Tomcat | 【金三银四】Tomcat面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115486648 |
17 | 多线程 | 【金三银四】多线程面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115487212 |
18 | Nginx | 【金三银四】Nginx_BIO_NIO_AIO面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115488446 |
19 | memcache | 【金三银四】memcache面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115494213 |
20 | java异常 | 【金三银四】java异常面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115530401 |
21 | Java虚拟机 | 【金三银四】Java虚拟机面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115532365 |
22 | Java集合 | 【金三银四】Java集合面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115599284 |
23 | Git常用命令 | 【金三银四】Git常用命令(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115602390 |
24 | Elasticsearch | 【金三银四】Elasticsearch面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115604293 |
25 | Dubbo | 【金三银四】Dubbo面试题(2021最新版) | https://blog.csdn.net/SQY0809/article/details/115605560 |
1、Tomcat的缺省端口是多少,怎么修改?
1)找到Tomcat目录下的conf文件夹
2)进入conf文件夹里面找到server.xml文件
3)打开server.xml文件
4)在server.xml文件里面找到下列信息
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1"redirectPort="8443" uriEncoding="utf-8"/>port="8080"改成你想要的端口
2、tomcat 有哪几种Connector 运行模式(优化)?
3、Tomcat有几种部署方式?
1)直接把Web项目放在webapps下,Tomcat会自动将其部署
2)在server.xml文件上配置<Context>节点,设置相关的属性即可
3)通过Catalina来进行配置:进入到conf\Catalina\localhost文件下,创建一个xml文件,该文件的名字就是站点的名字。
编写XML的方式来进行设置。
4、tomcat容器是如何创建servlet类实例?用到了什么原理?
当容器启动时,会读取在webapps目录下所有的web应用中的web.xml文件,然后对xml文件进行解析,并读取servlet注册信息。然后,将每个应用中注册的servlet类都进行加载,并通过反射的方式实例化。(有时候也是在第一次请求时实例化)在servlet注册时加上如果为正数,则在一开始就实例化,如果不写或为负数,则第一次请求实例化。
5.tomcat 如何优化?
6.内存调优
7.垃圾回收策略调优
8.添加JMS远程监控
9.专业点的分析工具有
IBM ISA,JProfiler、probe 等,具体监控及分析方式去网上搜索即可
10.关于Tomcat的session数目
这个可以直接从Tomcat的web管理界面去查看即可 ;
或者借助于第三方工具Lambda Probe来查看,它相对于Tomcat自带的管理稍微多了点功能,但也不多 ;
11.监视Tomcat的内存使用情况
使用JDK自带的jconsole可以比较明了的看到内存的使用情况,线程的状态,当前加载的类的总量等;JDK自带的jvisualvm可以下载插件(如GC等),可以查看更丰富的信息。如果是分析本地的Tomcat的话,还可以进行内存抽样等,检查每个类的使用情况
12.打印类的加载情况及对象的回收情况
13.Tomcat一个请求的完整过程
Ng:(nginx)
upstream yy_001{
server 10.99.99.99:8080;
server 10.99.99.100:8080;
hash $**;
healthcheck_enabled;
healthcheck_delay 3000;
healthcheck_timeout 1000;
healthcheck_failcount 2;
healthcheck_send 'GET /healthcheck.html HTTP/1.0' 'Host: wo.com'
'Connection: close';
}
server {
include base.conf;
server_name wo.de.tian;
...
location /yy/ {
proxy_pass http://yy_001;
}

14.Tomcat工作模式?
笔者回答:Tomcat是一个JSP/Servlet容器。其作为Servlet容器,有三种工作模式:独立的Servlet容器、进程内的Servlet容器和进程外的Servlet容器。进入Tomcat的请求可以根据Tomcat的工作模式分为如下两类:Tomcat作为应用程序服务器:请求来自于前端的web服务器,这可能是Apache, IIS, Nginx等;Tomcat作为独立服
15.共享session处理
面试题答案解析完整文档:【Tomcat面试题【附答案解析】】
最后
篇幅有限,其他内容就不在这里一一展示了,整理不易,欢迎大家一起交流,喜欢小编分享的文章记得关注我点赞哟,感谢支持!