四维纵横 - 转正实习 - golang开发
1. Go 和 C++
- 你认为 Go 和 C++ 各自的优缺点是什么?
- 你的意思是 C++ 的性能比 Go 要强一些是吧?
- 你大概知道它强在哪方面吗?C++ 为什么性能会比 Go 好?
2. C++ 内存管理
- 你在使用 C++ 的时候有需要处理垃圾回收吗?
3. Go channel
- Go 里面有个 channel 这个数据结构了解吗?
- 往一个 channel 里面发送数据,如果 channel 关闭了,会怎么样?
- 如果从一个关闭的 channel 里面读数据,会怎么样?
4. 数据库
- 平时有使用过什么数据库呢?
- 对于数据库的一些结构或者模块有了解过吗?
- 如果说有一个查询需要优化,你一般的优化思路是什么?
- 你觉得在数据库里面,它的瓶颈可能会在哪里?在资源上来说,一般查询容易在哪个资源上发生瓶颈?
5. Docker 和 Kubernetes
- 我看你了解 Docker,K8s,说一下 K8s 里面有 requests 和 limits 是做什么的?
- Docker 包括了解的多吗?有使用的多吗?
- 你平时有了解过 Docker 的一些原理,它是怎么做这种资源的控制?
- 比如说在 Linux 上,cgroups 和 namespace 分别是做什么的?
6. 性能排查
- 你在机器上一般是怎么去排查性能的问题?
- 你在模拟 1000 以上的 OLT 设备并发量时,有没有关注过在 500 和 1000 的时候,怎么评估机器的负载,极限到底在哪里?
- 在服务器上怎么查看当前 CPU 和内存的负载?
7. Go context
- 打开 Go 里面的 context 熟悉吗?
- 比如说 context 里面的超时控制,然后它的一些取消机制,了解吗?