知识体系

1、基础
1.1、操作系统
1.1.1、Linux
1.1.1.1、系统和应用性能工具
1.1.1.1.1、[BPF(eBPF)](#BPF(eBPF))
1.2、网络
1.2.1、网络协议
1.2.1.1 、应用层协议
1.2.1.1.1、[HTTP](#HTTP)
1.2.1.1.2、[HTTPS](#HTTPS)
1.2.1.2、传输层协议
1.2.1.2.1、[TCP](#TCP)
1.2.1.2.2、[UDP](#UDP)
1.2.1.3、网络层协议
1.2.1.3.1、[IP](#IP)
1.3、硬件
1.3.1、服务器
1.3.2、交换机
1.3.3、路由器
1.3.4、防火墙
2、编码
2.1、数据结构
2.1.1、线性表
2.1.2、栈
2.1.3、队列
2.1.4、串
2.1.5、树
2.1.6、优先队列(堆)
2.1.7、图
2.2、算法
2.2.1、排序
2.2.1.1、冒泡排序
2.2.1.2、简单选择排序
2.2.1.3、直接插入排序
2.2.1.4、希尔排序
2.2.1.5、堆排序
2.2.1.6、归并排序
2.2.1.7、快速排序
2.2.1.8、桶排序
2.2.1.9、外部排序
2.2.2、查找
2.2.2.1、顺序查找
2.2.2.2、有序表查找
2.2.2.2.1、二分查找(折半查找)
2.2.2.2.2、插值查找
2.2.2.3、线性索引查找
2.2.2.3.1、稠密索引
2.2.2.3.2、倒排索引
2.2.2.3.3、分块索引
2.2.2.4、二叉排序树
2.2.2.5、平衡二叉树(AVL树)
2.2.2.6、多路查找树(B树)
2.2.2.7、散列表查找(哈希表)
2.2.3、字符串模式匹配
2.2.3.1、朴素模式匹配
2.2.3.2、KMP
2.2.4、图算法
2.2.4.1、路径查找和图搜索
2.2.4.1.1、深度优先搜索
2.2.4.1.2、广度优先搜索
2.2.4.1.3、最小生成树
2.2.4.1.3.1、Prim
2.2.4.1.3.2、Kruskal
2.2.4.1.4、最短路径
2.2.4.1.4.1、Dijkstra
2.2.4.1.4.2、Floyd
2.2.4.1.5、关键路径
2.2.4.2、中心性算法
2.2.4.2.1、度中心性算法
2.2.4.2.2、接近中心性算法
2.2.4.2.3、PageRank算法
2.2.4.3、社团发现算法
2.2.4.3.1、三角形计数和聚类算法
2.2.4.3.2、强连通分量算法
2.2.4.3.3、联通分量算法
2.2.4.3.4、标签传播算法
2.2.4.3.5、Louvain模块度算法
2.3、设计模式
2.4、程序设计原则
2.4.1、接口
2.4.1.1、The bigger the interface, the weaker the abstraction
2.4.1.2、ISP
2.4.2、方法、函数
2.4.2。1、高扇入、合理扇出
2.4.3、重构
2.5、编程语言
2.5.1、[Java](#Java)
2.5.2、[Python](#Python)
2.5.3、[GO](#GO)
2.5.4、[C++](#C++)
2.6、项目构建
2.6.1、[Maven](#Maven)
2.6.2、[mvnd](#mvnd)
2.6.3、[Gradle](#Gradle)
3、测试
4、运维
5、管理
6、架构
6.1、架构基础知识和理论
6.1.1、分布式系统理论
6.1.1.1、分布式一致性
6.1.1.2、复制同步
6.1.1.3、分布式事务
6.1.2、架构核心要素
6.1.2.1、性能
6.1.2.2、可用性
6.1.2.3、伸缩性
6.1.2.4、扩展性
6.1.2.5、安全性
6.1.2.5.1、Web应用安全
6.1.2.5.1.1、身份验证和授权中的漏洞
6.1.2.5.1.2、会话固定漏洞(Session Fixation)
6.1.2.5.1.3、跨站脚本(Cross-Site Scripting, XSS)
6.1.2.5.1.4、跨站请求伪造(Cross-Site Request Forgery, CSRF)
6.1.2.5.1.5、SQL注入(SQL Injection)
6.1.2.5.1.6、敏感数据暴露
6.1.2.5.1.6.1、配置文件
6.1.2.5.1.6.2、日志
6.1.2.5.1.6.3、返回信息及异常返回(IP、程序内部结构、依赖软件版本等)
6.1.2.5.1.7、缺乏方法访问控制
6.1.2.5.1.8、使用了具有已知漏洞的依赖项
6.1.3、架构设计原则
6.2、系统架构
6.2.1、基础设施
6.2.1.1、容器
6.2.1.1.1、Docker
6.2.1.2、容器编排管理
6.2.1.2.1、Kubernetes
6.2.1.3、Service Mesh
6.2.1.3.1、Istio
6.2.2、存储、计算、中间件、大数据平台等基础服务组件
6.2.2.1、存储
6.2.2.1.1、数据库
6.2.2.1.1.1、关系型数据库
6.2.2.1.1.1.1、MySQL
6.2.2.1.1.1.2、PostgreSQL
6.2.2.1.1.1.3、Oracle
6.2.2.1.1.1.4、SQLServer
6.2.2.1.1.2、非关系型数据库(NoSQL)
6.2.2.1.1.2.1、KV键值数据库
6.2.2.1.1.2.1.1、Redis
6.2.2.1.1.2.1.2、LevelDB
6.2.2.1.1.2.2、列式数据库
6.2.2.1.1.2.2.1、HBase
6.2.2.1.1.2.2.2、Cassandra
6.2.2.1.1.2.2.3、ClickHouse
6.2.2.1.1.2.3、文档数据库
6.2.2.1.1.2.3.1、MongoDB
6.2.2.1.1.2.4、图数据库
6.2.2.1.1.2.4.1、Neo4j
6.2.2.1.1.2.4.2、JanusGraph
6.2.2.1.1.2.4.3、HugeGraph
6.2.2.1.1.2.4.4、NebulaGraph
6.2.2.1.1.2.5、时序数据库
6.2.2.1.1.2.6、向量数据库
6.2.2.1.1.3、NewSQL
6.2.2.1.1.3.1、TiDB
6.2.2.1.2、块存储、分布式对象存储、分布式文件系统
6.2.2.1.3、数据仓库
6.2.2.1.4、数据湖
6.2.2.2、计算
6.2.2.2.1、批处理
6.2.2.2.2、流计算
6.2.2.2.3、图计算
6.2.2.3、中间件
6.2.2.3.1、消息中间件
6.2.2.3.2、全文检索引擎
6.2.2.3.3、数据库中间件
6.2.2.3.4、数据同步
6.2.2.4、大数据平台
6.2.2.4.1、大数据集成平台
6.2.2.4.1.1、hadoop
6.2.2.4.1.1.1、HDP
6.2.2.4.1.1.2、CDH
6.2.2.4.1.1.3、CDP
6.2.2.4.2、大数据生态组件
6.2.2.4.2.1、数据收集
6.2.2.4.2.2、数据存储
6.2.2.4.2.3、数据计算与分析
6.2.2.4.2.3.1、批处理(离线)
6.2.2.4.2.3.2、流计算(实时、近实时)
6.2.2.4.2.3.3、OLAP
6.2.2.4.2.3.3.1、ROLAP
6.2.2.4.2.3.3.2、MOLAP
6.2.2.4.2.3.3.2.1、Apache Kylin
6.2.2.4.2.3.3.3、HOLAP
6.2.2.4.2.4、数据可视化
6.2.2.4.2.5、其他
6.2.2.4.2.5.1、数据接入、传输、交换、同步
6.2.2.4.2.5.1.1、Sqoop
6.2.2.4.2.5.1.2、DataX
6.2.2.4.2.5.2、资源调度
6.2.2.4.2.5.2.1、YARN
6.2.2.4.2.5.3、工作流(作业)调度
6.2.2.4.2.5.3.1、Ooize
6.2.2.4.2.5.3.2、Azkaban
6.2.2.4.2.5.3.3、Apache DolphinScheduler
6.2.2.4.2.5.4、安全与权限管控
6.2.2.4.2.5.4.1、Ranger
6.2.3、应用服务层
6.2.3.1、服务治理
6.2.3.1.1、负载均衡
6.2.3.1.2、网关
6.2.3.1.3、服务注册与发现
6.2.3.1.4、分布式链路跟踪
6.2.3.1.5、统一配置
6.2.3.1.6、限流、熔断
6.2.3.2、远程调用
6.2.3.2.1、RPC
6.2.3.2.1、gRPC
6.2.3.3、分布式锁
6.2.3.4、分布式事务
6.2.3.5、分布式任务
6.3、业务架构
6.3.1、安全
6.3.1.1、登录注册
6.3.1.2、认证授权
6.3.1.3、开放接口
6.3.2、搜索
6.3.3、推荐
6.3.4、评论
6.3.5、支付
6.3.6、即时通信
7、人工智能
7.1、人工智能数学基础
7.2、机器学习
7.3、深度学习
7.4、知识图谱
7.4.1、知识图谱架构
7.4.2、知识表示与建模
7.4.2.1、事件图谱与事理图谱
7.4.3、知识获取
7.4.4、知识融合
7.4.5、知识存储
7.4.6、知识推理
7.4.7、知识质量评估与更新
7.5、自然语言处理