2023.10.25

423 阅读1分钟

深圳垣象科技一面

  1. 简单自我介绍
  2. 了解Redis的持久化吗
  3. AOF重写机制
  4. MySQL索引有哪些类型
  5. 索引的实现原理
  6. B+树的非叶子节点和叶子节点的区别
  7. 回表了解吗
  8. 有什么办法能不回表
  9. Linux 怎么查看端口调用
  10. Go的channel 底层实现了解吗?
  11. 如果通道里头没数据了,那些go 协程会怎样?
  12. Map的并发检测是怎么做的
  13. 讲讲项目里头有什么自己觉得有亮点或有成就感的地方
  14. 代码题,实现一个本地的cache ,达到线程安全
type MyMap interface {

    Add(key string, value int) // 增,改

    Remove(key string) // 删

    Get(key string) (int, bool) // 查

    SnapShot() map[string]int // 快照

}
  1. 假设说,现在这个缓存的key很多,有几千万个,这个snapShot如果按你刚才的思路(深拷贝),就会阻塞时间很长,有什么办法优化?