地址
github.com/Snailclimb/…
说明
一份涵盖大部分Java程序员所需要掌握的核心知识。
JavaGuide 的Star数量虽然比较多,但是它的价值和含金量一定是不能和 Dubbo、Nacos这些优秀的国产开源项目比的。希望国内可以出更多优秀的开源项目!
另外,希望大家对面试不要抱有侥幸的心理,打铁还需自身硬! 我希望这个文档是为你学习 Java 指明方向,而不是用来应付面试用的。加油!奥利给!
目录
-
Java
- 基础
- 容器
- 并发
- JVM
- 其他
-
网络
-
操作系统
- Linux
-
数据结构与算法
- 数据结构
- 算法
-
数据库
- MySQL
- Redis
-
系统设计
-
必知
-
常用框架
- Spring
- SpringBoot
- MyBatis
-
认证授权(JWT、SSO)
-
分布式
- Elasticsearch(分布式搜索引擎)
- RPC
- 消息队列
- API 网关
- 分布式id
- 分布式限流
- 分布式接口幂等性
- 数据库扩展
- ZooKeeper
-
大型网站架构
- 性能测试
- 高并发
- 高可用
-
微服务
- Spring Cloud
-
-
必会工具
- Git
- Docker
-
面试指南
-
Java学习常见问题汇总
-
资源
- 书单推荐
- 实战项目推荐
-
待办
-
说明
Java
基础
基础知识系统总结:
重要知识点详解:
其他:
容器
并发
多线程学习指南
面试题总结:
必备知识点:
JVM
其他
网络
操作系统
最硬核的操作系统常见问题总结!
Linux
- 后端程序员必备的 Linux 基础知识
- Shell 编程入门
数据结构与算法
数据结构
- 不了解布隆过滤器?一文给你整的明明白白!
- 数据结构知识学习与面试
算法
-
硬核的算法学习书籍+资源推荐
-
常见算法问题总结:
- 几道常见的字符串算法题总结
- 几道常见的链表算法题总结
- 剑指offer部分编程题
- 公司真题
- 回溯算法经典案例之N皇后问题
数据库
MySQL
总结:
重要知识点:
Redis
-
Redis 常见问题总结
-
Redis 系列文章合集:
- 5种基本数据结构
- 跳跃表
- 分布式锁深入探究 、 Redlock分布式锁 、如何做可靠的分布式锁,Redlock真的可行么
- 神奇的HyperLoglog解决统计问题
- 亿级数据过滤和布隆过滤器
- GeoHash查找附近的人
- 持久化
- 发布订阅与Stream
- 史上最强【集群】入门实践教程
- Redis数据类型、编码、底层数据结构的关系看这篇
系统设计
必知
常用框架
Spring/SpringBoot
MyBatis
- MyBatis常见面试题总结
认证授权
认证授权基础:搞清Authentication,Authorization以及Cookie、Session、Token、OAuth 2、SSO
JWT
- JWT 优缺点分析以及常见问题解决方案
- 适合初学者入门 Spring Security With JWT 的 Demo
SSO(单点登录)
SSO(Single Sign On)即单点登录说的是用户登陆多个子系统的其中一个就有权访问与其相关的其他系统。举个例子我们在登陆了京东金融之后,我们同时也成功登陆京东的京东超市、京东家电等子系统。相关阅读:SSO 单点登录看这篇就够了!
分布式
分布式相关概念入门
Elasticsearch(分布式搜索引擎)
提高搜索效率。常见于电商购物网站的商品搜索于分类。
代办......
RPC
让调用远程服务调用像调用本地方法那样简单。
- Dubbo 总结:关于 Dubbo 的重要知识点
- 服务之间的调用为啥不直接用 HTTP 而用 RPC?
消息队列
消息队列在分布式系统中主要是为了接耦和削峰。相关阅读: 消息队列总结 。
RabbitMQ:
RocketMQ:
Kafka:
API 网关
网关主要用于请求转发、安全认证、协议转换、容灾。
分布式id
分布式限流
分布式接口幂等性
ZooKeeper
前两篇文章可能有内容重合部分,推荐都看一遍。
其他
- 接口幂等性(代办):分布式系统必须要考虑接口的幂等性。
数据库扩展
读写分离、分库分表。
代办.....
大型网站架构
- 8 张图读懂大型网站技术架构
- 关于大型网站系统架构你不得不懂的10个问题
性能测试
- 后端程序员也要懂的性能测试知识 (知识星球)
高并发
待办......
高可用
高可用描述的是一个系统在大部分时间都是可用的,可以为我们提供服务的。高可用代表系统即使在发生硬件故障或者系统升级的时候,服务仍然是可用的 。相关阅读: 《如何设计一个高可用系统?要考虑哪些地方?》 。
微服务
Spring Cloud
- 大白话入门 Spring Cloud
必会工具
Git
- Git入门
Docker
其他
- 【原创】如何使用云服务器?希望这篇文章能够对你有帮助!
面试指南
这部分很多内容比如大厂面经、真实面经分析被移除,详见完结撒花!JavaGuide面试突击版来啦!。
Java学习常见问题汇总
资源
书单推荐
- Java程序员必备书单
实战项目推荐
- Java、SpringBoot实战项目推荐
Github
- Github 上非常棒的 Java 开源项目集合
- Github 上 Star 数最多的 10 个项目,看完之后很意外!
- 年末将至,值得你关注的16个Java 开源项目!
- Java 项目历史月榜单