Lazy loaded imageGo 学习总结

type
status
date
slug
summary
tags
category
icon
password
Blocked by
Blocking
Category
AI summary

操作系统

  • 进程管理
    • 进程、线程、协程的区别
    • 进程的状态有哪些,相互之间如何转化
    • 一个进程的创建过程是怎么样的
    • 进程的调度算法
    • 进程间通信的方式
  • 线程管理
  • 内存管理
可以参考小林coding https://xiaolincoding.com/os/

计算机网络

  • 应用层
    • 常用状态码
    • http的常用header
    • 不同http版本的差异
    • tls的过程
  • 传输层
    • tcp和udp的区别
    • tcp的三次握手和四次挥手
    • tcp的拥塞控制和流量控制
  • 网络层
  • 数据链路层
可以参考小林coding https://xiaolincoding.com/network/

数据结构与算法

  • 栈和队列的区别
  • 快速排序、归并排序、冒泡排序
  • 查找算法(如二分查找)
  • 跳表与 B+ 树的区别
  • 链表操作(如删除倒数第 K 个元素)
  • 动态规划与贪心算法
  • 树结构(如二叉树的遍历、平衡树的实现等)
  • 其他常见数据结构的应用场景和实现
单纯准备面试,刷算法题可以只看 hot 100 https://leetcode.cn/studyplan/top-100-liked/

MySQL

  • InnoDB 存储引擎的实现(B+树、事务隔离级别等)
  • 索引分类与优缺点,如何优化 SQL 性能
  • 分库分表的策略与实践
可以参考小林coding https://xiaolincoding.com/mysql/

Redis

  • 数据类型(如 String、hash、Set、Sorted Set、Bitmap)及应用场景
  • Redis 持久化与性能优化,Redis主从,哨兵,集群
  • 缓存使用过程中的问题,例如缓存击穿、缓存穿透、缓存雪崩,以及你如何防止和解决这些问题
可以参考小林coding https://xiaolincoding.com/redis/

MQ 以kafka为例

  • 消息积压处理,消息幂等性,消息的有序性
  • kafka为什么快,生产者生产机制,消费者消费机制,什么是副本

Golang语言学习重点

基础语法:slice、map、channel、func、interface的使用;错误处理机制(defer、recover)
并发编程:goroutine、channel、mutex、sync包等

后端开发方向

技术栈

基础

  • JWT,sission,cookie 区别
  • 权限校验框架 (如casbin实现RBAC、实现ABAC)
  • 可观测性:日志收集(如EFK),链路追踪(jaeger),指标监控(prometheus+grafana)
  • git使用;docker部署项目(docker镜像,容器 )
  • 常用的设计模式

微服务

微服务与单体项目相比的优势
RPC的思想,学学RPC的具体实现,比如Google推出的gRPC
服务注册、服务发现的思想 底层原理看https://learnku.com/articles/70653
框架例如,最最常用的gin框架、b站推出的kratos微服务框架、好未来推出的go-zero框架

分布式

  • 生成全局唯一ID方式(UUID,雪花算法,美团Leaf
  • Raft协议,CAP原则,一致性哈希
  • 分布式锁

k8s开发工程师方向

技术栈

docker

  1. docker基本操作,比如如何运行、删除容器,如何看容器的日志;容器的网络模式、docker-compose;
  1. 容器底层的linux内核的一些知识,例如 namespace、cgroup、unionFS,对于这部分感兴趣,可以去看看《动手写docker》这本书的前三章

kubernetes

基础知识
  1. K8s 中的资源调度与管理(如 Deployment、ReplicaSet 等)
  1. K8s 的架构、组件(如控制平面、节点、Pod 等),不同组件之间是如何通信的,一个pod创建过程是怎么样的
  1. 利用kind本机快速搭建k8s集群
进阶
  1. kubelet的源码阅读
  1. 熟悉client-go 源码这里推荐《Kubernetes Operator开发进阶》 这本书
  1. 容器网络(CNI)、容器存储(CSI)、容器运行时(CRI)的具体实现,比如网络层面的calico或者是cilium存储层面的cephFS容器运行时层面的docker和containerd
  1. default-scheduler的调度逻辑,有什么优缺点,在AI时代有什么其他的批量调度的scheduler。如果对于调度器感兴趣可以看看华为的volcano、字节的Golden scheduler
  1. 异构资源的时代(不同厂商的GPU资源),这时如何实现异构GPU的管理,提高GPU的使用率?(可以去看看device-plugin的开发与原理,第四范式和DaoCloud共同孵化的HAMI
  1. Operator的开发(一般用kubebuilder来开发)
 

推荐的博客和网站

  1. golang基础教学 李文周 https://www.liwenzhou.com/
  1. b站CTO毛剑的 微服务课程
  1. 极客兔兔(复旦大佬,用go造轮子,从零实现xxx) https://geektutu.com/post/gee.html
  1. 小徐先生(理论派与实践派大师,执行力max)https://space.bilibili.com/317473362/upload/video
  1. 意琦行(云原生领域的文章写得很通透,表达能力max) https://www.lixueduan.com/posts/
  1. 名校公开课程评价网(学有余力,外语较好的同学,可以多看看国外的课程,多写这种lab对眼界和coding能力的提升很有帮助)
  1. 极客时间(大部分课程的markdown这里都有)
    1. https://gitea.fantasticbin.com/fantasticbin/gitbook
  1. GeekHour(快速入门xxx) https://space.bilibili.com/102438649/upload/video
  1. 设计数据密集型应用 DDIA(阅读前期可能有些晦涩难懂,但对于你的架构思维培养很有帮助) http://ddia.vonng.com/#/
  1. 软件设计哲学
  1. 字节佬的系统设计推荐列表
  1. 云原生技术公开课
 

一些公司的岗位描述


传统后端+偏云原生方向的开发
notion image
notion image
notion image
notion image
 
notion image

简历

notion image
如果有什么想和我聊聊,欢迎👏加我微信,注明来意即可.
notion image
 
 
Prev
SSE
Next
kubebuilder 总结
Loading...
Article List
如果去做,还有一丝希望;但是不去做,就毫无希望
技术分享
个人总结
k8s
MQ
linux
MongoDB
golang
Golang
Linux
转发
Redis
Mysql