总结
机会是留给有准备的人,大家在求职之前应该要明确自己的态度,熟悉求职流程,做好充分的准备,把一些可预见的事情做好。
对于应届毕业生来说,校招更适合你们,因为绝大部分都不会有工作经验,企业也不会有工作经验的需求。同时,你也不需要伪造高大上的实战经验,以此让自己的简历能够脱颖而出,反倒会让面试官有所怀疑。
你在大学时期应该明确自己的发展方向,如果你在大一就确定你以后想成为Java工程师,那就不要花太多的时间去学习其他的技术语言,高数之类的,不如好好想着如何夯实Java基础。下图涵盖了应届生乃至转行过来的小白要学习的Java内容:
请转发本文支持一下
2.1 使用——log-slow-queries[=file_name]选项启动MySQL服务,会记录超过long_query_time秒的sql日志到文件。
2.2 查找到低效率的SQL后,通过EXPLAIN分析低效sql的执行。关键点在于type:表的连接类型,key:实际使用索引,rows:扫描行的数量。可以根据extra进行优化。
3.索引问题
1.mysql可以对字段的前4个字符进行索引。
2.最左前缀:对于创建的符合索引,只要查询的条件用到了最左边的列,索引一般就会被使用。
3.like的查询,只有%号不在第一个字符,索引才可能被用上。(假如like的条件已经含有全部搜索条件,也没有必要用索引)
4.存在索引但不使用索引
1.因为MySQL估计索引比全表扫描更慢
2.用or分割开的条件,如果前面的列有索引,后面的列没有索引,那么涉及的索引都不会被用到。
3.如果不是索引列的第一部分(最左)
4.如果like以%开始
5.如果列类型是字符串,不加引号
5.优化内存空间,对数据库数磁盘碎片进行整理
optimize table test;
执行期间会表锁定,需要在数据库不繁忙的时候执行。
6.优化insert语句
1.一次插入多行,可以使用多个值表的insert语句,例如:insert into test values(1,2),(1,3);
2.索引文件和数据文件分在不同的磁盘存放,利用建表选项。
7.优化group by子句
可以使用order by null避免进行排序。(避免filesort)
8.优化子查询
使用join代替子查询操作。
因为join不需要在内存中创建临时表来完成这个需要2个步骤的工作。
9.优化or条件
对于含有OR 的查询子句,如果要利用索引,则OR 之间的每个条件列都必须用到索引;
如果没有索引,则应该考虑增加索引。
10.使用sql提示
使用use index提供希望mysql参考的索引,节省mysql筛选索引的时间
例如:explain select * from test use index(ind_test) where id= 1;
使用force index参照上面的,这个不是让mysql作为参考,而是强制使用。
11.表结构优化
使用PROCEDURE ANALYSE()函数确定要优化的列。
会返回字段现有数据的最小值和最大值,以及最小和最大长度。最后还会给出合理的建议字段。
12.拆表
垂直拆表,将不常用的列放入另一个表。
水平拆表:表的数据具有独立性,如按照年进行分表。
缺点,查询所有数据需要联合操作。
13.逆规范化
1.增加冗余列,避免查询时的连接操作。
2.增加派生列,避免使用函数多次计算。
3.重新组表,如果许多用户需要查看两个表连接出来的结果,可以组成一个表来减少连接。
4.分表,拆分表
注意:逆规范化虽然带来了速度,但是也对数据完整性提出了要求,一般在应用层进行维护,但是易出疏漏,特别是需求变更时。这里不建议使用触发器,对数据的任何修改触发对复制列或者派生列的相应修改。
14.使用中间表
数据量较大的表,统计时可以创建临时使用的中间表,使用中间表可以提高统计的效率,并且不会对线上应用产生负面影响。
15、优化MySQL配置
以下是我的配置示例。加了skip-name-resolve,快了4-5s。其他配置自行断定
[client]
port=3306
[mysql]
no-beep
default-character-set=utf8
[mysqld]
server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
slave-skip-errors=all #跳过所有错误
skip-name-resolveport=3306
### 最后
手绘了下图所示的kafka知识大纲流程图(xmind文件不能上传,导出图片展现),但都可提供源文件给每位爱学习的朋友

> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.youkuaiyun.com/forums/4f45ff00ff254613a03fab5e56a57acb)收录**
**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.youkuaiyun.com/forums/4f45ff00ff254613a03fab5e56a57acb)**
ING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.youkuaiyun.com/forums/4f45ff00ff254613a03fab5e56a57acb)收录**
**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.youkuaiyun.com/forums/4f45ff00ff254613a03fab5e56a57acb)**