本文主要是介绍2020-2021字节跳动Java面试真题解析,相关资料参考,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
### 1关于MySQL,面试官会问哪些问题?
* **第一个:MySQ性能优化最佳实践21个(有具体的解释)你知道哪些?**
1. 为查询缓存优化你的查询
2. EXPLAIN你的SELECT查询
3. 当只要一行数据时使用LIMIT 1
4. 为搜索字段建索引
5. 在Join表的时候使用相当类型的例,并将其索引
6. 千万不要 ORDER BY RAND()
7. 避免 SELECT *
8. 永远为每张表设置一个 ID
9. 使用 ENUM 而不是 VARCHAR
10. 从 PROCEDURE ANALYSE() 取得建议
11. 尽可能的使用 NOT NULL
12. Prepared Statements
13. 无缓冲的查询
14. 把 IP 地址存成 UNSIGNED INT
15. 固定长度的表会更快
16. 垂直分割
17. 拆分大的 DELETE 或 INSERT 语句
18. 越小的列会越快
19. 选择正确的存储引擎
20. 使用一个对象关系映射器(Object Relational Mapper)
21. 小心“永久链接”
篇幅有点长,整理成了一个PDF文档:
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027313959920.jpg)
* **第二个:来看下MySQL的高频20问(附带详细解答,整理成册)**
1. 事务四大特性(ACID)原子性、一致性、隔离性、持久性?
2. 事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别?
3. MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)的区别?
4. MySQL的MyISAM与InnoDB两种存储引擎在,事务、锁级别,各自的适用场景?
5. 查询语句不同元素(where、jion、limit、group by、having等等)执行先后顺序?
6. 什么是临时表,临时表什么时候删除?
7. MySQL B+Tree索引和Hash索引的区别?
8. sql查询语句确定创建哪种类型的索引?如何优化查询?
9. 聚集索引和非聚集索引区别?
10. 有哪些锁(乐观锁悲观锁),select 时怎么加排它锁?
11. 非关系型数据库和关系型数据库区别,优势比较?
12. 数据库三范式,根据某个场景设计数据表?
13. 数据库的读写分离、主从复制,主从复制分析的 7 个问题?
14. 使用explain优化sql和索引?
15. MySQL慢查询怎么解决?
16. 什么是 内连接、外连接、交叉连接、笛卡尔积等?
17. mysql都有什么锁,死锁判定原理和具体场景,死锁怎么解决?
18. varchar和char的使用场景?
19. mysql 高并发环境解决方案?
20. 数据库崩溃时事务的恢复机制(REDO日志和UNDO日志)?
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027314566720.jpg)
### 1.3 MySQL性能调优笔记分享
* **《MySQL性能调优与架构设计--全册(PDF)》**
本书分为3个部分,第一部分是基础篇,第二部分是重点之重性能调优篇,第三部分是架构设计篇
(1)目录简介
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027315144980.jpg)
(2)详情内容
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027315776048.jpg)
* **《重学MySQL:从入门到精通(PDF)》**
本书包括MySQL的安装与配置、数据库的创建、数据表的创建、数据类型和运算符、MySQL函数、查询数据、数据表的操作(插入、更新与删除数据)、索引、存储过程和函数、视图、触发器、用户管理、数据备份与恢复、日志以及性能优化等等。本书注重实战操作,帮助读者循序渐进的掌握MySQL的各项技术。需要重学一下MySQL,建议可以看看这个
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027316593534.jpg)
## 02 Tomcat性能调优
### 2.1 Tomcat性能调优面试必备题(附带详细解答)你能答多少?
1. 你怎样给 tomcat 去调优?
2. 如何加大 tomcat 连接数
3. tomcat 中如何禁止列目录下的文件
4. 怎样加大 tomcat 的内存
5. Tomcat 有几种部署方式
6. Tomcat 的优化经验
7. Tomcat 的缺省端口是多少,怎么修改?
8. tomcat 有哪几种 Connector 运行模式( 优化) ?
9. Tomcat 有几种部署方式?
10. tomcat 容器是如何创建 servlet 类实例?用到了什么原理?
11. tomcat 如何优化?
12. 内存调优
13. 垃圾回收策略调优
14. 添加 JMS 远程监控
15. 专业点的分析工具有
16. 关于 Tomcat 的 的 session 数目
17. 监视 Tomcat 的内存使用情况
18. 打印类的加载情况及对象的回收情况
19. Tomcat 一个请求的完整过程
20. Tomcat 工作模式?
### 最后
**[给大家送上一份福利,领取方式:戳这里免费下载](https://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB)**
**Java架构进阶面试及知识点文档笔记**
> **这份文档共498页,其中包括Java集合,并发编程,JVM,Dubbo,Redis,Spring全家桶,MySQL,Kafka等面试解析及知识点整理**
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027316282627.jpg)
**Java分布式高级面试问题解析文档**
**其中都是包括分布式的面试问题解析,内容有**分布式消息队列,Redis缓存,分库分表,微服务架构,分布式高可用,读写分离等等!
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027317548820.jpg)
**互联网Java程序员面试必备问题解析及文档学习笔记**
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027317730715.jpg)
**Java架构进阶视频解析合集**
![image](http://www.www.zyiz.net/i/li/?n=2&i=images/20210630/1625027318600091.jpg)
这篇关于2020-2021字节跳动Java面试真题解析,相关资料参考的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!