简单记录一次go面试过程
第一次面试go,完全不懂面试套路,被虐的体无完肤,面试完时没想到,后来复盘发现但其实我会.把面试问到的问题记下来供大家参考.
1. 自我介绍
回答:略.
2. 项目中你觉得你做的不错的地方
回答:略.
3. 项目中闭包的使用
当时完全没想到,后来翻看之前的的项目,才看见使用gin写的中间件到处都是.
4.内置map是否并发安全,怎么解决
回答:不是并发安全的,可以使用sync包里的map,或者加锁.
5.想要map并发安全使用互斥锁效率低怎么办
这个我真的不会了.
6.redis中缓存雪崩,缓存穿透,缓存击穿以及解决方法
回答:
缓存雪崩:大量缓存同时失效,可以设置随机的过期时间;
缓存穿透:使用不存在的数据进行查询,可以在查询后在缓存中添加一个null值,或者提前过滤掉数据,如id小于某一个值就直接拦截;
缓存击穿:缓存到期后,直接请求到数据库中,可以设置热点数据永不过期.
7. 设计模式
纯粹没了解过,就想起了Java的,回来复盘发现就是同一样东西,像工厂模式,代理模式等,总共是23种.
8. go里面的并发模型
这个也是没想起来,本来想回答调度模型的,后来还是回答没了解过,回来复盘发现就是回答多线程模型就行了(caocaocao).
9. 对项目中的要求有没有自己优化提升过之类的
回答:没想过.
总之,这是第一次关于go的面试,好多都是没想到面试官会从那个方面来问,这些问题的答案也是没想到.这次也是给自己面试探探水,看看还有那些自己没注意到的,为下一次面试提供经验教训.
有疑问加站长微信联系(非本文作者))
