前言
上篇已经分析了线程池和同步工具。这里我们来介绍原子类和forkjoin框架。
起今知行
在学习完虚拟机之后,我们了解了java的内存模型、实现线程安全的方法和jvm的一些锁优化机制,我们现在就把方向在往线程的基本操作,到concurrent包里面的线程安全类、原子类和一些lock的实现类。了解整个java并发基础。
这篇我们从sql语句优化开始分析,这个时最基础的,可能我们在使用过程中都没有注意,也没有相关经验,但是有了这个意识,我们需要看别人总结的经验,自己去记忆和动手试下实例,加深理解。然后从mysql引擎的选择等方面进行分析,更恰当的去使用mysql。
上篇已经建立了测试数据库,然后通过相关工具找到了慢查询的语句,这些就是我们优化的对象,本篇就从索引的角度去改善我们的数据库性能。共四种索引,主键索引、唯一索引、普通索引、全文索引。索引是有消耗的,占空间的,MYI格式文件在data文件夹下。
之前已经了解过mysql的基本原理,重点是我们该从哪些方面去改善数据库性能,或者从设计开始怎么样去合适的设计,可以使用哪些工具和方法去帮助我们监测数据库,并根据在数据库原理的理解基础上,对不同的业务需求不同的软硬件环境,尽量做出最优的优化策略。下面就看下有哪些优化方法和适用场景,可以根据实际选用其中一部分进行优化,而且优化是一个整体的,所以不是改变一个方法就能大幅提升性能,也没有确定的套路。本文在看了传智mysql优化课程之后记录的学习笔记。