golang工程师精选面经合集
1家公司
1篇面经
最新 热门
/feed/main/detail/3966b8903c134d8981b790bbcc24a6f4
golang社招面经
#golang面经# 1、容量为1的channel在什么情况下会堵塞(除了常见的)2、多线程同时读写map中不同的key,一个线程只会读写一个key,会发送什么3、检查数据竞争4、实现了一个web的server,如何设置这个server返回的response的类型,比如说是一个图片一个视频一个json5、快速定位死锁6、用户从客户端访问一个页面,webserver如何主动的给这个页面推送一个通知7、singleflght是使用什么方式去通知其他线程,其他线程怎么阻塞的8、不用waitgroup怎么实现这部分9、slice是[]int{1,2},把它传入一个函数,修改第一项的值为3,函数结束,原来slice值改变了吗10、如果函数是新建一个list等于append原来的slice,list=append(slice,3),调用完这个函数后在函数的外部打印这个原来slice的长度是多少,新的是多少,地址改变了吗,指向的原来的数组呢11、a和b两个线程,a里面有defer recover,a里面新开了一个b,b没写defer recover,b发生了panic,ab两个线程会发生什么情况(之前没听清,以为是两个不相干的函数,我还在想那不直接panic还要咋)12、在函数参数传递一个非指针的互斥锁会发生什么事情?为什么会发生?13、优化过sql吗,数据库是部署在哪里的,讲一个你认为最好的sql优化例子14、mysql部署在阿里云上,如何找到最慢的sql语句15、用过gorm,如果一张上百万的数据的表,要新建一个字段的索引,如何保证线上的服务尽量少的被影响16、jwt鉴权管理实现怎么做的,怎么实现的鉴权,修改了token它怎么解析,为什么这么解析,原理是什么17、详细说一下令牌桶算法的实现
点赞 评论 收藏
转发
/feed/main/detail/ff78ddd58056430e9582e6fd6a0eff35
头像
今天 00:17
已编辑
浙江大学 计算机类
面经 | 拼多多服务端二面
第一部分:自我介绍第二部分:项目经历1. 研究方向:解释一下研究方向的相关工作和内容    1. 怎么理解数据关系?数据分析的工作?    2. 详细解释2. HBase项目    1. Rowkey是怎么设计的?为什么这么设计    2. Region概念知道吗?怎么知道数据存在哪个Region中?    3. HBase的存储结构了解过吗?HBase的最小存储单元是什么?3. 为什么自学golang?4. golang有哪些优势呢?5. RPC项目:    1. 注册中心的功能是什么?    2. RPC客户端调用,到服务端返回的过程?    3. 注册中心挂了之后,你是怎么处理的?    4. 负载均衡是怎么做的?    5. 为什么用一致性哈希?    6. 为什么需要一致性哈希,为什么要尽可能避免映射关系的改变?    7. 客户端的每次请求都访问注册中心吗?    8. 服务端挂了注册中心是怎么知道的?是怎么去告诉客户端?问题:1. 客户端访问服务器的连接挂了之后,客户端可能比注册中心先知道,因为客户端是一直有可能和服务端交互的,因此应该添加客户端发现服务端挂了,告诉注册中心。第三部分:算法题:k个长度不一的有序数据,找到每个数组中都存在的数,尽可能地优化时间复杂度,较少的空间复杂度
点赞 评论 收藏
转发
/feed/main/detail/bada5f3a4adb408f8468f678ed81ee27/discuss/613133000326307840
golang社招面经
#golang面经# 1、引用类型的特点2、修改底层数组的值,切片的值是否改变3、map并发不安全为什么会panic,int并发出错会不会panic,为什么4、map里面的数据怎么存的,怎么读的,发生哈希冲突后值存在哪5、怎么实现并发安全的map6、sync.map是怎么实现的,里面有没有锁,和go的锁有什么区别???7、sync的读写锁,先加读锁,能不能加上写锁,能不能再加上读锁8、sync的锁的加锁原理9、原子操作,automic里cas方法,它里面的实现有没有加锁,原子操作和go的锁有什么区别10、gmp有了本地队列,为什么还要全局队列,为什么不直接从全局队列拿11、协程的数据结构是什么,保存了哪些东西12、线程什么时候会挂起协程去执行其他协程13、聊聊抢占式调度吗14、gc的对象是哪的,找根对象从什么位置开始找15、channel的使用场景,一般用来做什么16、两个协程之间通常发一个信号在通道里面,发什么类型的变量17、全局定义两个不同的空结构体,地址是否相同,如果定义两个空结构体分别在不同的结构体中呢18、定义两个int的地址一样吗19、gin怎么实现记录所有的响应日志,包含url所有操作,记录日志怎么记录的,项目用了哪些中间件20、zap怎么设置的,怎么对日志进行切割的,时间记录级别等等21、mysql俩引擎的区别,可重复读与读已提交区别,一个事务已提交,可重复读读这个事务的数据提交前后是否相同22、聚簇索引与非聚簇索引的区别23、什么情况下设置索引24、b树与b+树25、跳表的特点,存了哪些东西,怎么实现的26、redis的rdb与aof,aof里面存什么27、redis怎么加分布式锁,setnx锁里面的值存什么,锁过期了,但逻辑还没执行完,怎么处理28、setnx分布式锁加上后系统崩掉了,锁怎么办29、缓存一致性30、redis几种缓存异常和解决方法31、docker你用哪些命令做什么32、linux你常用哪些命令做什么33、项目中奖励数据(货币相关的数据)怎么统计的,什么结构逻辑还有字段34、项目中的货币是定期返回还是实时返回记录,定期的话那那一段空的时间怎么处理35、几个限流的算法的优势与区别36、聊聊tcp滑动窗口37、聊聊区块链和web3
点赞 评论 收藏
转发
/feed/main/detail/d9c3f98514f84cacbf96cb0adb76a54a/discuss/613032742795665408/discuss/613132535354187776/feed/main/detail/b3af0fe43faa486e91880ea669fb4b01/feed/main/detail/518c1bf6df2249a49590b9ec429bbeab/feed/main/detail/5981390449ae40b986aa311932858911/feed/main/detail/536f05738ccc4eada652be24b311233e
虾皮Shoppe Golang 一面
1. 自我介绍2. 项目介绍 (基本上简历上的项目都问了一遍)  a. 开发的模块  b. 部署的流程  c. 具体的实现3. 实习介绍  a. 实习工作内容 和 怎么实现  b. 实习最大的收获是什么4. 讲讲Go的垃圾回收  a. 有了解过其他的语言的垃圾回收吗  b. 为什么Go语言要使用三色标记法5. GMP原理6. Mysql了解的怎么样?    a. 讲讲事务的隔离性  b. 乐观锁和悲观锁了解吗    ⅰ. mysql中哪些支持乐观锁 哪些支持悲观锁  c. 幻读和脏读是什么  d. 什么是索引、索引的种类、索引的作用  e. 平衡二叉树、B树、B+树是什么7. Redis了解的怎么样  a. 说说常用的Redis数据结构  b. 什么是hash,怎么解决hash冲突,除了拉链法还有其他的吗  c. redis 内存淘汰机制  d. redis 过期删除机制  e. 8. 其他语言有了解吗,还是就会Go  a. 讲讲Go中协程是怎么通信的  b. 如果我想要主协程等待其他协程运行完再运行应该怎么执行    ⅰ. waitGroup的底层试是什么  c. new 和 make的区别9. 手撕,判断链表是否有环LC原题,(15分钟) 从0手撕 acm模式10. 目前手上有几个offer11. 反问#go##golang##春招#
点赞 评论 收藏
转发
/feed/main/detail/3771946a05df4debb02e98cf9e07fdce/feed/main/detail/c445bb6404e244d09f782958743aa6f2/feed/main/detail/374333e741c34397b349ad0f2dc82c1d/feed/main/detail/16b8ff6617314e18a3911c03d1d4b926/feed/main/detail/be88a47af7854ba5ae5f77d265444476/discuss/609722390351716352/feed/main/detail/1b192225c07643dc84a1e6ee07806c0b/discuss/609434099383541760/discuss/609416746570620928
玩命加载中
写面经
发动态
发动态
发帖子
写文章

全站热榜

牛客网
牛客企业服务