linux后台服务知识点

一、后台开发技能总体

  1. 语言
  2. 数据结构与算法
  3. 数据库:mysql,缓存redis
  4. 网络原理
  5. 操作系统
  6. 网络编程
  7. 分布式
  8. 云原生

二、语言

  1. 循环分支控制
  2. 对象的生命周期
  3. 垃圾回收
  4. 标准库使用
  5. 错误异常处理
  6. 日志分析,端点调试
  7. 面向对象理解
  8. 设计模式
  9. gdb使用

三、数据结构与算法

  1. 数据结构三类:线性、树形、图形
  2. 算法
    (1)链表、队列、栈
    (2)二叉树,红黑树,b树,b+树
    (3)dijkstra算法,最小生成树
    (4)递归
    (5)排序(11种)
    (6)归并
    (7)快排
    (8)堆排序
    (9)贪心算法,动态规划
    (10)跳表,散列表,hash, 布隆过滤器

四、数据库
(1)mysql

  1. mysql安装与配置
  2. sql语句,建表,建库,索引,存储过程
  3. 存储引擎(原理),myisam/innodb
  4. 数据库连接池
  5. 异步数据库请求
  6. sql注入,webshell攻击,
  7. 数据库集群(分库分表,读写分离)

(2) redis
redis使用,安装,配置
redis命令使用
redis异步,连接池
redis集群
redis数据备份
缓存雪崩,缓存击穿

五、网络原理

  1. ping ,telnet(端口),ifconfig
  2. 网络体系模型,数据从哪一层
  3. tcp原理
  4. 三次握手
  5. 四次挥手
  6. 滑动窗口
  7. 慢启动
  8. 状态机
  9. udp原理:实时,不带流量控制
  10. http/https/http2.0/http3.0
  11. Session,cookie application
  12. 网络安全,加密,数字标签
  13. 抓包:wireshark,tcpdump
  14. 网络带宽,iperf

六、操作系统

  1. 文件操作,系统操作
  2. 程序编译,运行
  3. shell/vi使用
  4. liux系统性能监控参数 ps/netstat/df
  5. 进程管理
  6. 用户态、内核态:交互只有通过系统调用
  7. 内存管理,内存池,内存泄露
  8. 磁盘文件系统,虚拟文件系统
  9. 磁盘io

七、网络编程

  1. socket编程,tcp/udp
  2. 网络io模型,阻塞,非阻塞,异步,同步
  3. io多路复用 select/poll/epoll
  4. epoll reactor,proactor
  5. time wait/close wait 大量
  6. C10k/C1000K/C10M
  7. 网络框架 libeevent/libev,协程ntyco,libco

八、分布式

  1. rpc,grpc,tars,brpc,srpc :对外基础服务
  2. 简单rpc协议设计/框架搭建
  3. 协议传输序列化,反序列化
  4. 服务注册,服务发现
  5. 容灾,降级熔断,流量控制
  6. 高并发,高可用
  7. 分布式锁:etcd,zookeeper

九、云原生

  1. 腾讯云/阿里云
  2. docker镜像管理
  3. docker编排,网络
  4. k8s管理
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。