写点什么

2023 最新 Go 面经:百度滴滴小米 360 小红书展盟优咔科技......

作者:王中阳Go
  • 2023-12-13
    北京
  • 本文字数:2129 字

    阅读完需:约 7 分钟

2023最新Go面经:百度滴滴小米360小红书展盟优咔科技......

前言

本文整理了 2023 年最新的 Go 面试经验:涵盖了百度、滴滴、小米、360、小红书、展盟和优咔科技等知名公司的面试题目。


题目涉及 Go 语言基础知识、数据库知识、消息队列、Kubernetes 相关知识、服务治理与微服务架构、Docker 知识、监控和度量、算法与编程、自我介绍、职业规划等。


以下面经来自我们 拿到多个Offer的好友 分享。

1. Go 语言基础

  • Go 的垃圾回收机制?GMP 模型?(展盟,百度,滴滴,小米)

  • Golang 如何优雅关闭一个 channel?(展盟)

  • Go 里面的 map 是怎么决绝 hash 冲突的?(展盟)

  • slice 是引用传递还是值传递?slice 参数传递过去,修改之后,外部变量是否也会被修改?(展盟)

  • Go 读写锁的概念?读的时候会影响别人的读么?读优先还是写优先?(展盟)

  • context 的应用场景?(展盟)

  • select 的作用?项目中怎么使用的?(展盟)

  • 数组和切片的区别(柯莱特-外派小红书,优咔科技)

  • map 是否是线程安全的,如何在 Go 中使用线程安全的 map(柯莱特-外派小红书,优咔科技)

  • sync.map 的原理(柯莱特-外派小红书,优咔科技)

  • Go 数据类型有哪些?(优咔科技)

  • 如何判断两个 interface{}相等?(优咔科技)

  • Go map 中删除一个 key 的内存是否会立即释放?(优咔科技)

  • init()方法的特性(优咔科技)

  • switch-case 语句,强制执行下一个 case(优咔科技)

  • encoding/json 包解码通过 HTTP 请求接收的 JSON 数据时,它会默认将所有数字解析为 float64 类型(优咔科技)

  • Go 里面的类型断言?(优咔科技)

  • Go 静态类型声明?(优咔科技)

  • sync 包使用?(优咔科技,360)

  • gin 的并发请求、错误处理、路由处理(优咔科技)

  • CSP 并发模型(百度)

  • 逃逸分析的介绍?逃逸分析怎么看(-gcflags = "-m -l")?工作中是否用过逃逸分析解决问题?(百度)

  • 对关闭的 channel 进行读写 channel 会发生什么?对关闭的 channel 写为什么会 panic?(百度)

  • 字符串转 byte 数组会发生内存拷贝么?为什么?(百度)

  • 如何实现字符串转切片无内存拷贝(unsafe)?(百度)

  • Go 语言 channel 的特性?channel 阻塞信息是怎么处理的?channel 底层实现?(360)

2. 数据库知识

  • MySQL 的事务隔离级别,可重复读是什么样的概念?(展盟,360)

  • MySQL 联合索引最左匹配原则(展盟)

  • MySQL 的慢查询是怎么解决的?(展盟,360,小米)

  • Redis 遍历 key 的命令,可否用 keys 命令?(展盟)

  • MySQL 的优化?(优咔科技)

  • MonGoDB 和 MySQL 的区别,MonGoDB 的索引了解过么?(优咔科技)

  • Redis 的数据类型?(优咔科技,360)

  • Redis 持久化的方式(优咔科技)

  • MySQL 的索引,聚簇索引和非聚簇索引的区别?索引是用什么实现的(b+ tree)?(360)

  • MySQL 事务隔离级别(RU/RC/RR/S),可重复读是怎么实现的?幻读是怎么解决的?(360)

  • Redis ZSet 底层是怎么实现的(压缩链表、跳表)(360)

  • Redis 的持久化机制?RDB 的原理(save、bgsave)?(360)

3. Kafka

  • kafka 同步租户时如何防止信息丢失(事务:commit、autocommit)(展盟)

4. Kubernetes 相关知识

  • 介绍 istio 相关概念(展盟,优咔科技,360)

  • k8s 的 service,集群用的什么网络插件(calico、flannel)?(展盟)

  • 聊聊云原生是什么?(优咔科技)

  • 常见的容器运行时(优咔科技)

  • 数据库是如何部署的(k8s 的 statefulset)(优咔科技)

  • 介绍 k8s master 的组件(优咔科技)

  • 容器和虚机的不同点?(优咔科技)

  • k8s 的源码看过么?(360)

  • k8s 创建一个 Pod 的全过程(小米)

  • client-Go Informer 机制全过程?(小米)

  • Delta-FIFO 和普通队列的区别?Store 是什么?Reflector 是什么?(小米)

  • k8s 官方 sample-controller 和 kubebuilder 生成 controller 有什么区别?(小米)

5. 服务治理与微服务架构

  • kitex 框架:服务治理(负载均衡、服务降级...)、可观测(链路追踪...)(展盟)

  • istio 是做数据面还是控制面?(优咔科技)

  • Istio 负载均衡的策略(优咔科技)

  • Service mesh 中南北向和东西向流量处理?(优咔科技)


  1. Linux 命令和系统知识


  • Linux 的 awk、strace 命令(展盟)

  • linux 根据服务名称查看端口号(netstat -tunlp | grep 服务名称)(柯莱特-外派小红书)

  • linux 根据服务名称查看 pid(ps -aux | 服务名称)(柯莱特-外派小红书)

  • linux 进程间通信的方式(socket、管道.....)(柯莱特-外派小红书)

7. Docker 知识

  • docker 构建镜像,推送到镜像仓库(柯莱特-外派小红书)

8. 监控和度量

  • Promethues 在项目中的应用(柯莱特-外派小红书,小米,360)

  • opentelemetry 相关在项目的实践(trace 的协议、打点后上报)(柯莱特-外派小红书)

  • Promethues 的 metrics 类型(counter、gauge、Histogram、Summary)(柯莱特-外派小红书)

9. 算法与编程

  • 算法题:使用两个 Goroutine,向标准输出中按顺序按顺序交替打出字母与数字,输出是 a1b2c3……(百度,滴滴)

10. 自我介绍

  • 自我介绍、项目介绍(柯莱特-外派小红书,百度,滴滴,360,小米)

  • 项目的业务背景(360)

  • k8s 的源码看过么?(360)

  • Prometheus 在项目中的监控了哪些信息?如何监控?(360)

  • 项目中,单元测试中需要 mock 哪些代码?(360)

11. 职业规划

  • 职业规划(云平台、业务开发)(展盟)

面试建议

一定不要死记硬背八股文,学会结合自己的项目去总结梳理,去表达,这样才能打动面试官。


如果比谁的八股文背的好,那大概率是 chatGPT,光背八股文很难提高自己的面试竞争力!


需要简历优化、就业辅导的朋友可以关注我,私信我。


毕竟:我们又出成绩啦!大厂Offer集锦!遥遥领先!

发布于: 刚刚阅读数: 4
用户头像

王中阳Go

关注

靠敲代码在北京买房的程序员 2022-10-09 加入

【微信】wangzhongyang1993【公众号】程序员升职加薪之旅【成就】InfoQ专家博主👍掘金签约作者👍B站&掘金&CSDN&思否等全平台账号:王中阳Go

评论 (1 条评论)

发布
用户头像
祝愿大家都能拿到多个Offer,顺利上岸!
刚刚 · 北京
回复
没有更多了
2023最新Go面经:百度滴滴小米360小红书展盟优咔科技......_golang_王中阳Go_InfoQ写作社区