高性能服务端开发知识点
后端架构知识点:
一.基础篇
1.数据结构与算法
(1)链表操作 链表
(2)二叉树操作 二叉树
(3)排序操作 排序
(4)红黑树
(5)B树
2.编程语言
(1)C11/14++特性(智能指针,lamdba)
(2)GoLang
(3)Lua
(4)makefile/cmake makefie
(5)shell
(6)gdb gdb
(7)coredump coredump
3.操作系统
(1)Linux常用命令 linux命令
(2)进程与线程 进程
(3)内存管理模型
4.网络
(1)tcp
(2)udp
(3)http http报文
(4)keeplive
二、进阶篇
1.网络编程
(1)socket编程 socket API 阻塞 非阻塞
(2)I/O复用(select/poll和epoll)epoll select poll
(3)开源库(libevent/ACE/libev等) libevent
(4)Reactor/Proactor Comparing Two High-Performance I/O Design Patterns
2.多线程编程
(1)线程/进程间通信 线程 进程
(2)线程同步(互斥锁、自旋锁、原子操作) 线程同步的手段
(3)线程池设计
(4)内存池设计
(5)连接池
3.开源组件
(1)mysql
(2)redis
(3)nginx
(4)消息队列(ZeroMQ)
(5)日志(logg4) log4cpp
(6)RPC(thrif)
(7)序列化(protobuf、json) protobuf
三、高级篇
1.Linux系统性能分析
2.用户态协议栈(协程框架)
3.**后端系统架构设计
4.即时通信框架设计及实现
5.高并发、高可用后台服务设计(分布式、微服务)
*四、附加项
1.大数据
2.云计算
3.人工智能
4.深度学习
5.区块链