1. Go有哪些数据结构。channel底层数据结构。读写已关闭channel会发生什么。子协程panic,父协程会终止吗;2. GMP调度模型;协程与线程的区别,初始化大小,协程初始化大小是固定的吗;G与M的关系;3. 一个2GB内存限制的服务,可以开启多少个协程4. MySQL和Redis的区别;MySQL存储引擎;索引数据类型;5. 数据页内结构,数据页之间结构;6. MySQL隔离级别;有哪些锁;锁的单位7. MVCC是如何实现的;8. 在可重复隔离级别的事务里,如何当前读9. MySQL有哪些日志;有什么区别;为什么要用redo log;undo log 在MVCC中有使用吗,有什么作用;10. MySQL主从复制是怎样实现的;主从复制有哪些模型;11. 覆盖索引12.redis有哪些部署模式;有了解cluster模式吗;13. redis 持久化机制;AOF重写机制;14. redis主从复制怎样进行同步;假如一个从节点上线,会怎样同步;15. redis 过期删除策略;16. 用过redis哪些数据结构;zset的底层数据结构;跳表是如何实现的;17. docker运行容器参数,端口暴露、数据卷挂载18. 假如Dockerfile 镜像很大,该如何优化;有没有了解过多阶段构建19. git常用命令;有没有用过reset、cherry-pick命令20. kafka为什么快;kafka部署模式;kafka数据写/读有什么特点;kafka数据存储是怎样的方式;知道offset的使用方式吗;如何实现kafka的精确一次消费21. 算法(说出思路,并给出时间、空间复杂度):有序数组求两数之和,如何利用有序条件,为什么双指针这种方式是对的;有序数组求三数之和;二分查找时间复杂度;爬楼梯,空间优化;合并区间;如何合并两个有序链表;判断链表是否有环,如何找到环的入口;