第三次面试某外包1面
自我介绍和项目
1、MySQL的引擎 :innodb
2、b+树数据结构的优点和b树的区别:b树一旦存储key数量达到5个就会向上裂变,b数中叶子节点和非叶子节点都会存放数据,b+数说有数据都存放在叶子节点上,叶子节点形成一个单向链表,非叶子节点只存放索引。对应b树的话保存同样多的数据b+数的高度更低索引更快。
3、索引的类型:根据存储结构分为聚集索引和非聚集索引,根据数据列又分为主键索引,外键索引、唯一索引、联合索引
4、MySQL什么时候啊会产生死锁,怎么解决
5、对SQL语句怎么进行优化。先分析如果知道是那局sql语句直接用explain进行分析,就可以了解到sql是否走索引,以及执行时间。如何具体进行优化。
6、索引失效的情况
7、redis的使用
8、zeset数据结构底层存储原理:忘记了 答案在zeset中不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
9、map 是并发安全的么?不是,为什么不是? 不会、map 变量为 指针类型变量,并发写时,多个协程同时操作一个内存,类似于多线程操作同一个资源会发生竞争关系,共享资源会遭到破坏。
10、GPM调度模型
11、协程为什么很快? 不会巴拉巴拉了一堆
12、chan 底层怎么实现的?不会不过巴拉巴拉了一堆。
13、go的协程怎么处理才安全。会使用sync.waitgroup包,有wg.add、wg.done和wg.wait。最后记得关闭。
14、有什么想了解的
自我介绍和项目
1、MySQL的引擎 :innodb
2、b+树数据结构的优点和b树的区别:b树一旦存储key数量达到5个就会向上裂变,b数中叶子节点和非叶子节点都会存放数据,b+数说有数据都存放在叶子节点上,叶子节点形成一个单向链表,非叶子节点只存放索引。对应b树的话保存同样多的数据b+数的高度更低索引更快。
3、索引的类型:根据存储结构分为聚集索引和非聚集索引,根据数据列又分为主键索引,外键索引、唯一索引、联合索引
4、MySQL什么时候啊会产生死锁,怎么解决
5、对SQL语句怎么进行优化。先分析如果知道是那局sql语句直接用explain进行分析,就可以了解到sql是否走索引,以及执行时间。如何具体进行优化。
6、索引失效的情况
7、redis的使用
8、zeset数据结构底层存储原理:忘记了 答案在zeset中不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
9、map 是并发安全的么?不是,为什么不是? 不会、map 变量为 指针类型变量,并发写时,多个协程同时操作一个内存,类似于多线程操作同一个资源会发生竞争关系,共享资源会遭到破坏。
10、GPM调度模型
11、协程为什么很快? 不会巴拉巴拉了一堆
12、chan 底层怎么实现的?不会不过巴拉巴拉了一堆。
13、go的协程怎么处理才安全。会使用sync.waitgroup包,有wg.add、wg.done和wg.wait。最后记得关闭。
14、有什么想了解的