01 MySQL性能调优
1.1 MySQL性能调优问题有哪些?怎么学?
关于这个,给大家看一份学习大纲(xmind)文件,每一个分支里面会有详细的介绍。
MySQL性能调优问题
这里都是以图片形式展示介绍,如要下载原文件以及更多的性能调优笔记(MySQL+Tomcat+JVM)可以直接扫描小编二维码即可免费下载!!
1.2 关于MySQL,面试官会问哪些问题?
- 第一个:MySQ性能优化最佳实践21个(有具体的解释)你知道哪些?
- 为查询缓存优化你的查询
- EXPLAIN你的SELECT查询
- 当只要一行数据时使用LIMIT 1
- 为搜索字段建索引
- 在Join表的时候使用相当类型的例,并将其索引
- 千万不要 ORDER BY RAND()
- 避免 SELECT *
- 永远为每张表设置一个 ID
- 使用 ENUM 而不是 VARCHAR
- 从 PROCEDURE ANALYSE() 取得建议
- 尽可能的使用 NOT NULL
- Prepared Statements
- 无缓冲的查询
- 把 IP 地址存成 UNSIGNED INT
- 固定长度的表会更快
- 垂直分割
- 拆分大的 DELETE 或 INSERT 语句
- 越小的列会越快
- 选择正确的存储引擎
- 使用一个对象关系映射器(Object Relational Mapper)
- 小心“永久链接”
篇幅有点长,整理成了一个PDF文档:
MySQ性能优化最佳实践21个(具体的解释)
- 第二个:来看下MySQL的高频20问(附带详细解答,整理成册)
- 事务四大特性(ACID)原子性、一致性、隔离性、持久性?
- 事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别?
- MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)的区别?
- MySQL的MyISAM与InnoDB两种存储引擎在,事务、锁级别,各自的适用场景?
- 查询语句不同元素(where、jion、limit、group by、having等等)执行先后顺序?
- 什么是临时表,临时表什么时候删除?
- MySQL B+Tree索引和Hash索引的区别?
- sql查询语句确定创建哪种类型的索引?如何优化查询?
- 聚集索引和非聚集索引区别?
- 有哪些锁(乐观锁悲观锁),select 时怎么加排它锁?
- 非关系型数据库和关系型数据库区别,优势比较?
- 数据库三范式,根据某个场景设计数据表?
- 数据库的读写分离、主从复制,主从复制分析的 7 个问题?
- 使用explain优化sql和索引?
- MySQL慢查询怎么解决?
- 什么是 内连接、外连接、交叉连接、笛卡尔积等?
- mysql都有什么锁,死锁判定原理和具体场景,死锁怎么解决?
- varchar和char的使用场景?
- mysql 高并发环境解决方案?
- 数据库崩溃时事务的恢复机制(REDO日志和UNDO日志)?
MySQL的高频20问(详细解答)
1.3 MySQL性能调优笔记分享
- 《MySQL性能调优与架构设计--全册(PDF)》
本书分为3个部分,第一部分是基础篇,第二部分是重点之重性能调优篇,第三部分是架构设计篇
(1)目录简介
(2)详情内容
- 《重学MySQL:从入门到精通(PDF)》
本书包括MySQL的安装与配置、数据库的创建、数据表的创建、数据类型和运算符、MySQL函数、查询数据、数据表的操作(插入、更新与删除数据)、索引、存储过程和函数、视图、触发器、用户管理、数据备份与恢复、日志以及性能优化等等。本书注重实战操作,帮助读者循序渐进的掌握MySQL的各项技术。需要重学一下MySQL,建议可以看看这个
02 Tomcat性能调优
2.1 Tomcat性能调优面试必备题(附带详细解答)你能答多少?
- 你怎样给 tomcat 去调优?
- 如何加大 tomcat 连接数
- tomcat 中如何禁止列目录下的文件
- 怎样加大 tomcat 的内存
- Tomcat 有几种部署方式
- Tomcat 的优化经验
- Tomcat 的缺省端口是多少,怎么修改?
- tomcat 有哪几种 Connector 运行模式( 优化) ?
- Tomcat 有几种部署方式?
- tomcat 容器是如何创建 servlet 类实例?用到了什么原理?
- tomcat 如何优化?
- 内存调优
- 垃圾回收策略调优
- 添加 JMS 远程监控
- 专业点的分析工具有
- 关于 Tomcat 的 的 session 数目
- 监视 Tomcat 的内存使用情况
- 打印类的加载情况及对象的回收情况
- Tomcat 一个请求的完整过程
- Tomcat 工作模式?
详细解答如下,需要下载原件的可以私信小编 “性能调优” 即可免费分享!
2.2 Tomcat学习笔记分享
- 《深入剖析Tomcat(中文版)(PDF)》
- 第1章:本书从介绍一个简单的HTTP服务器开始。为了建立一个可以运行的HTTP服务器,你需要了解java.net包下Socket类和ServerSocket类的内部运行机制。该章有详细的背景信息介绍,使你可以理解该章中应用程序的运行机制。
- 第2章:阐明一个简单的servlet容器是如何工作的。此章有两个与servlet容器有关的应用程序员,可以服务于静态资源的请求和简单servlet的请求。。
- 第15章:说明如何通过Digester组件来对Web应用程序进行配置,Digester是Apacbe软件基金会的一个开源项目,即使你对这个不熟悉也没关系,该章会简要介绍Digester库,说明如何使用该库来搞XML。
- 第16章:对Tomcat中的关闭钩子进行说明,不论用户如何关闭Tomcat(即通过发送关闭命令,或是突然直接关闭控制台),通过使用关闭钩子,Tomcat总是可以执行一些清理工作。
- 第17章:对使用批处理文件和Shell脚本来启动和关闭Tomcat进行说明。
- 第18章:对部署组件进行说明,该组件负责部署和安装web应用程序。
- Servlet对一个特殊接口(ContainerServlet)进行说明。使用该接口,Servlet对象可以访问Catalina中的内部对象,此外,该章会对用来管理已部署应用程序的Manager应用程序进行说明
- 第20章:对JMX进行说明,并阐述Tomcat是如何为其内部对象创建MBean,并使用这些内部对象可托管的。
03 JVM性能调优
3.1 JVM和性能调优问题学习大纲(xmind)
JVM和性能调优问题学习大纲(xmind)
3.2 JVM性能调优面试相关问题(附解析)
- Java 类加载过程?
- 描述一下 JVM 加载 Class 文件的原理机制?
- Java 内存分配。
- GC 是什么? 为什么要有 GC?
- 简述 Java 垃圾回收机制。
- 如何判断一个对象是否存活?(或者 GC 对象的判定方法)
- 垃圾回收的优点和原理。并考虑 2 种回收机制
- 垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?
- Java 中会存在内存泄漏吗,请简单描述。
- 深拷贝和浅拷贝。
- System.gc() 和 Runtime.gc() 会做什么事情?
- finalize() 方法什么时候被调用?析构函数 (finalization) 的目的是什么?
- 如果对象的引用被置为 null,垃圾收集器是否会立即释放对象占用的内存?
- 什么是分布式垃圾回收(DGC)?它是如何工作的?
- 串行(serial)收集器和吞吐量(throughput)收集器的区别是什么?
- 在 Java 中,对象什么时候可以被垃圾回收?
- 简述 Java 内存分配与回收策率以及 Minor GC 和 MajorGC
- JVM 的永久代中会发生垃圾回收么?
- Java 中垃圾收集的方法有哪些?
- 什么是类加载器,类加载器有哪些?
- 类加载器双亲委派模型机制?
JVM性能调优面试相关问题解析
3.3 JVM性能调优笔记分享
- 《JVM调优总结(PDF)》
(1)目录
目录
(2)内容详解
JVM调优内容详解
关于“性能调优”:MySQL+Tomcat+JVM,我要给大家分享学习的就这么多,不知道这些面试常备问题你都能答得上来不?不会也没关系,可以找小编分享完整的原件(题目+答案解析)
还有这些关于“性能调优”的学习笔记,这些学习路线以及书籍笔记之类的,若是你还没有,也可以找小编来免费分享下载,注意免费获取方式: 转发+转后扫描小编的二维码即可免费获取!