文章目录
- architect-awesome:后端架构师的技术知识图谱
- 1、 这个仓库里有什么
- 2、 覆盖的技术栈
- 3、 运维与网络
- 4、 适合谁看
architect-awesome:后端架构师的技术知识图谱
这个仓库在 GitHub 上已经拿到 60,832 Star 了。
xingshaocheng 维护的 architect-awesome,做的事情很明确——把后端架构师需要掌握的技术知识点,整理成一张完整的图谱。从数据结构到分布式系统,从操作系统到中间件,覆盖了后端开发的各个技术方向。
1、 这个仓库里有什么
整个项目按技术领域分成了十几个大类,每个大类下面又细分出具体的知识点和学习资料。
数据结构部分涵盖队列、集合、链表、栈、树(包括红黑树、B+树、LSM树)等基础内容。算法部分从排序、查找到动态规划、贪心、回溯,再到布隆过滤器和推荐算法,并发部分则覆盖了 Java 多线程、线程安全、事务隔离级别、MVCC、各类锁机制(公平锁、乐观锁、悲观锁、可重入锁、死锁)。
2、 覆盖的技术栈
除了基础的数据结构和算法,图谱还包含以下方向:
操作系统层面,涉及计算机原理、CPU多级缓存、进程线程协程、Linux。设计模式部分列出六大原则和23种常见模式,包括单例、责任链、MVC、IOC、AOP,以及微服务思想和康威定律。
中间件这块内容比较密集。Web Server 覆盖 Nginx、OpenResty、Tomcat、Jetty;缓存从本地缓存到 Redis、Memcached;消息队列包含 RabbitMQ、RocketMQ、Kafka、ZeroMQ;RPC 框架有 Dubbo、Thrift、gRPC。另外还有配置中心、API网关、日志系统、定时调度等。
数据库部分覆盖 MySQL 的原理、InnoDB、索引优化、explain 分析,以及 MongoDB、Hbase 等 NoSQL 方案。搜索引擎则涉及 Elasticsearch、Solr、Lucene。
3、 运维与网络
运维方向涵盖监控、APM、CI/CD(Jenkins)、自动化运维(Ansible、Puppet)、测试(TDD、压力测试、灰度发布)、虚拟化(KVM、Docker)、云技术(OpenStack)和 DevOps。
网络部分从 OSI 七层协议、TCP/IP、HTTP/HTTPS 讲起,延伸到 Epoll、Java NIO、零拷贝、序列化协议(Hessian、Protobuf)。
性能部分包括性能优化方法论、容量评估、CDN、连接池调优。大数据方向则涉及 Storm、Flink、Kafka Stream 等流式计算框架。
4、 适合谁看
正在从初级向高级进阶的 Java 开发者,可以把这张图谱当作查漏补缺的清单。准备面试的后端工程师,能用它快速定位薄弱环节。做技术选型的架构师,也能从中找到各类中间件和方案的横向对比。
这个仓库本身不提供具体的技术教程,它更像一份路线图,告诉你该学什么、往哪个方向深入。
库本身不提供具体的技术教程,它更像一份路线图,告诉你该学什么、往哪个方向深入。