【腾讯】Go岗-社招二面面经

一面:

1.go的调度

2.go struct能不能比较?

3.go defer(for defer)

4.select可以用于什么?

5.context包的用途?

6.client如何实现长连接?

7.主协程如何等其余协程完再操作

8.slice,len,cap,共享,扩容

9.map如何顺序读取?

10.实现set

11.实现消息队列(多生产者,多消费者)

12.大文件排序

13.基本排序,哪些是稳定的

14.http get跟head

15.http 401,403

16.http keep-alive

17.http能不能一次连接多次请求,不等后端返回

18.tcp与udp区别,udp优点,适用场景

19.time-wait的作用

20.数据库如何建索引

21.孤儿进程,僵尸进程

22.死锁条件,如何避免

23.linux命令,查看端口占用,cpu负载,内存占用,如何发送信号给一个进程

24.git文件版本,使用顺序,merge跟rebase

二面:

1.项目实现爬虫的流程

2.爬虫如何做的鉴权吗?

3.怎么实现的分布式爬虫

4.电商系统图片多会造成带宽过高,如何解决?

5.micro服务发现

6.mysql底层有哪几种实现方式

7.channel底层实现

8.java nio和go 区别

9.读写锁底层是怎么实现的?

10.go-micro 微服务架构怎么实现水平部署的,代码怎么实现?

11.micro怎么用

12.怎么做服务发现的

13.mysql索引为什么要用B+树?

14.mysql语句性能评测?

15.服务发现有哪些机制

16.raft算法是那种一致性算法

17.raft有什么特点

18.当go服务部署到线上了,发现有内存泄露,该怎么处理

19还有一些非常底层的问题

发表评论

后才能评论