「面试必背」Tomcat面试题(收藏)
「面试必背」Tomcat面试题(建议收藏)
2022-04-27 16:31·java柚子茶
前言
在工作中,作为 Java 开发的程序员,Tomcat 服务器是大家常用的,也是很多公司现在正在用的。但是,在系统并发量比较大的情况下,Tomcat 就会出现卡死和自动关闭等问题。如何优化 Tomcat,让它更高效的运行就成了问题,在本次面试题分享中,我将为你解答如何更好的提升 Tomcat 性能。
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文件上配置节点,设置相关的属性即可
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处理
感谢阅读,由于篇幅有限以上面经资料博主已经整理打包好了,这些知识点的导图和问题的答案详解的PDF文档都可以免费分享给大家,点赞收藏文章后,私信【资料】免费领取!
「面试必背」Tomcat面试题(收藏)相关推荐
- 「面试必背」Redis面试题(2022最新版)
作为一个后端开发人员,不只是要求开发人员需要掌握 Redis,也要求运维人员也要懂 Redis.由于 Redis 的运用广泛,我们也知道它的重要性,至此面试中经常被问到.在这 80道 Redis 面试 ...
- 「面试必背」Mybatis面试题(2022最新版)
1.模糊查询like语句该怎么写 2.Mybatis的Xml映射文件中,不同的Xml映射文件,id是否可以重复? 不同的Xml映射文件,如果配置了namespace,那么id可以重复:如果没有配置na ...
- 「面试必背」设计模式面试题(收藏)
前言 设计模式在日常的工作中,是非常重要的一项技能,使用设计模式可以重构整体架构代码.提交代码复用性.扩展性.减少代码冗余问题.这是每个 Java 工程师必备的技能!今日小编主要讲的是设计模式之一的策 ...
- 「面试必背」大数据面试题100道(收藏)
前言 随着 5G 时代的到来,大数据人工智能产业链又一次迎来了井喷式的爆发,随着岗位需求的不断增加,越来越多的人选择大数据课程,但是没有真正从事大数据工作的人面对企业面试有种无从下手的感觉,面对面试说 ...
- 「面试必背」Spring Cloud面试题(2022最新版)
Spring Cloud 是一系列框架的有序集合.它利用 Spring Boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载均衡.断路器.数据监控等,都 ...
- 「面试必背」Java集合面试题(收藏)
一.集合容器概述 1. 什么是集合 集合就是一个放数据的容器,准确的说是放数据对象引用的容器 集合类存放的都是对象的引用,而不是对象的本身 集合类型主要有3种:set(集).list(列表)和map( ...
- 【面试必背】Linux面试题(一)(2023最新版)
一.Linux 概述 1.什么是 Linux Linux 是一套免费使用和自由传播的类似 Unix 操作系统,一般的 WEB 项目都是部署都是放在 Linux操作系统上面. Linux 是一个基于 P ...
- 【面试必背】Linux面试题(三)(2023最新版)
31.Linux 性能调优都有哪几种方法? Disabling daemons (关闭 daemons) Shutting down the GUI (关闭 GUI) Changing kernel ...
- [PHP面试题]跳槽面试必背-自己最近5年的整理(三)
看完这些还怕进不了大厂? [PHP面试题]跳槽面试必背-自己最近5年的整理(一) [PHP面试题]跳槽面试必背-自己最近5年的整理(二) PHP经典面试题集(含答案) 面试12家公司,收获9个offe ...
最新文章
- Global.asax使用1
- Google Guava BloomFilter
- 浪潮业务稳定连续性获Global Data唯一“Leader”评级 蝉联数据中心整体能力“Very Strong”评级
- 【OpenCV 例程200篇】03. 图像的显示(cv2.imshow)
- 使用git时报错出现vim.exe.stackdump
- 线程的异常捕获与线程池的异常捕获
- PreparedStatement 防止 SQL 注入原理
- Makefile--如何将当前文件下的所有*.cpp文件与*.c文件全部生成相应的可执行文件
- 一切从项目Kick Off开始
- 翟菜花:从美团配送新品牌发布,看即时配送行业奇点何时到来
- 投掷骰子的python代码_模拟骰子(Python),掷骰子
- python网络编程内容_图解Python网络编程
- [Python|生信]从Fasta文件出发获取序列的基本信息
- 分享html代码的博客,简单实用的HTML代码分享
- 飞控和飞控固件的讲解
- CSS中的cursor用法
- 老李的博客在这里安家了
- Eye tracker accuracy and precision
- 【无标题】奥的斯故障代码分析(新版)
- 基于TFS的持续集成搭建流程