0
点赞
收藏
分享

微信扫一扫

查漏补缺-冲冲冲

酷子腿长一米八 2022-02-24 阅读 89
golang

一、语言

(一)Go

  • 进程、线程、协程的区别
  • Golang协程间如何通信
  • GMP模型
  • Golang Map底层
  • Golang的channel底层
  • 如何实现Map的有序查找(利用一个辅助slice)
  • sync包了解吗
  • Mutex与RWMutex
  • 怎么实现Map的并发安全(sync.Map,底层实际上用了一个Map缓存)
  • defer函数的使用场景(延迟Close、recover panic)
  • Golang GC(三色标记法,插入屏障、删除屏障、混合写屏障)
  • Map可以用数组作为Key吗(数组可以,切片不可以)
  • Channel的阻塞和非阻塞(顺带问了select用法)

(二)gin

(三)Python

(四)django

(五)nginx​​​​​​​

  • 什么是Nginx?为什么要用Nginx?Nginx的优缺点?
  • Nginx怎么处理请求的?为什么Nginx性能这么高?
  • 什么是正向代理和反向代理?优缺点
  • Nginx负载均衡的算法怎么实现的?策略有哪些?
  • 盘点那些关于Nginx的常考面试题 - 知乎
  • nginx高可用?
  • nginx 是如何实现并发的?
  • 为什么nginx不使用多线程?
  • nginx常见的优化手段有哪些?
  • 502错误可能原因有哪些?

二、DB

(一)mysql

  • 数据库索引,hash索引与B+树索引的适用场景,为什么用B+树索引
  • 主键与非主键和索引的关系(InnoDB主键一定是聚簇索引,非主键如果是索引的话,查询可能需要回表)

(二)redis

  • Redis为什么快(内存数据库,单线程IO多路复用)
  • 缓存雪崩、击穿、穿透是什么

三、工具命令

(一)linux

(二)shell

(三)Git

  • git的底层原理有了解吗

四、数据结构与算法

(一)数据结构

(二)算法

  • 鸡蛋掉落:JAVA程序设计:鸡蛋掉落(LeetCode:887)_信仰.的博客-CSDN博客_ykc什么意思

(三)设计模式

  • 消费者模式
  • 单例模式

四、计算机网络和操作系统

(一)计算机网络

  • 讲一下TCP的拥塞控制

(二)操作系统

  • 什么是异步,Linux异步有几种方式
  • poll和epoll什么区别
  • 进程间通信有几种方式
举报

相关推荐

0 条评论