微派 服务端一面 golang
- 询问实习的内容和情况
- tcp协议 如何保证可靠性
- tcp粘包问题、如何确定包的边界
- tcp的拥塞控制具体是怎么样的
- https url键入的过程
- https 加密、握手的过程
- 怎么信任这个证书、证书伪造
- http和rpc的区别
- grpc序列化方式
- rpc如何拿到服务器地址
- etcd是如何保证可靠的
- zset在项目中的使用
- zset底层数据结构
- zset插入的时候,跳表是怎么插入的,插入的时候对于层级是怎么处理的
- redis中hash是怎么实现的
- hash扩容、hash冲突
- redis持久化
- ALF 解决占用磁盘过大的原因
- RDB为什么是fork一个子进程、为什么不设计成一个子线程
- 缓存穿透、缓存击穿、缓存雪崩
- singlefight底层实现
- 数据库熔断是怎么做的
- mysql索引原理
- mysql常用的索引
- 聚簇索引和非聚簇索引
- 有没有用过联合索引、匹配的原则是什么
- mysql对于事务的更新是二阶段的提交,具体是哪几个阶段,每个阶段干了什么
- mysql的隔离级别怎么选择,区别是什么
- 读已提交和可重复读在实现上有什么不同的
- 算法题,手撕,本地IDE,删除链表倒数第N个节点