面试:Golang。面试体验平平,难度是简单题型,目前还没出结果。做股票咨询服务的,项目从去年8.9月开始,开发团队规模不大,问题会比较细致:1、存储过程有什么优缺点?2、sql做过哪些优化,临时表优化有哪些方式,join小表关联大表的顺序?3、索引如何建立,为什么要有主键索引,联合索引和关联索引区别,建立外键的好处?4、B树和B+树区别,可以手绘下?5、redis有哪些数据类型,通常用于什么场景,string可以存储json,hash也可以存储json,有什么区别?(其实string类型就多个序列化过程)6、redis过期清理策略,默认使用哪种方式?7、python和nodejs区别,golang和.net区别?8、谈一谈go里的切片,在一个函数里对切片进行修改会影响到原来的值?9、无缓冲和有缓冲通道区别?10、使用channel有什么注意事项,也就是什么时候会panic,如果重复关闭会怎样?11、协程怎样使用,定义完就可以不管了吗,如何阻塞协程,为什么最后要用await,在gin框架里本身会阻塞,那在其他地方使用协程还需要使用await吗,在协程里还需要做什么工作吗,比如超时处理?(需不需要await就看最后是否要做收尾工作)12、go里的垃圾回收机制,nodejs里的垃圾回收机制,垃圾回收主要回收栈上还是堆栈的?13、内存逃逸机制?14、docker常用的一些命令,为什么要做目录映射,从本地拷贝一个文件到容器使用什么命令?15、kafka的优缺点,topic是什么,怎么存储的,partition是什么,为什么要分区,replication是什么?16、go里的互斥锁和读写锁区别,mysql里有哪些锁,乐观锁和悲观锁区别?
2轮面试:群面/无领导小组、协作同事面试
面试感受:一般;面试难度:普通难度;面试来源:BOSS直聘