doocs /source-code-hunter
😱 从源码层面,剖析挖掘互联网行业主流技术的底层实现原理,为广大开发者 “提升技术深度” 提供便利。目前开放 Spring 全家桶,Mybatis、Netty、Dubbo 框架,及 Redis、Tomcat 中间件等
★ 23,125⑂ 4,205
23,125
stars
+-4+-4+-7
4,205
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions
README
互联网公司常用框架源码赏析 “技术深度” 与 “技术广度”是对开发者来说最为重要的两个维度,本项目致力于从源码层面,剖析和挖掘互联网行业主流技术的底层实现原理,为广大开发者 “提升技术深度” 提供便利。 加入我们,一起通读互联网行业主流框架及中间件源码,成为强大的 “源码猎人”,目前开放的有 Spring 全家桶、Mybatis、Netty、Dubbo 框架,及 Redis、Tomcat 中间件等,让我们一起开拓新的领地,揭开这些源码的神秘面纱。 本项目主要用于记录框架及中间件源码的阅读经验、个人理解及解析,希望能够使阅读源码变成一件简单有趣,且有价值的事情,抽空更新中... (如果本项目对您有帮助,请 watch、star、fork 素质三连一波,鼓励一下作者,谢谢) 网站 https://schunter.doocs.org Spring 系列 IoC 容器 - BeanDefinition 的资源定位过程 - 将 bean 解析封装成 BeanDefinition - 将 BeanDefinition 注册进 IoC 容器 - 依赖注入(DI).md) - BeanFactoryPostProcessor - BeanPostProcessor - Spring BeanFactory 源码解析 - 循环依赖 AOP - AOP 源码实现及分析 - JDK 动态代理的实现原理解析 - Spring AOP 如何生效(Spring AOP 标签解析) SpringMVC - IoC 容器 在 Web 环境 中的启动 - SpringMVC 的设计与实现 - SpringMVC 跨域解析 - Spring-MVC-HandlerMapping - Spring-mvc-MappingRegistry SpringJDBC - 努力编写中... Spring 事务 - Spring 与事务处理 - Spring 声明式事务处理 - Spring 事务处理的设计与实现 - Spring 事务管理器的设计与实现 - Spring 事务解析 Spring 源码故事(瞎编版) - 面筋哥 IoC 容器的一天(上).md) Spring 整体脉络 - 16 张图解锁 Spring 的整体脉络 Spring 类解析 - Spring 自定义标签解析 - Spring Scan 包扫描 - Spring 注解工具类 - Spring 别名注册 - Spring 标签解析类 - Spring ApplicationListener - Spring messageSource - Spring 自定义属性解析器 - Spring 排序工具 - Spring-import 注解 - Spring-定时任务 - Spring StopWatch - Spring 元数据 - Spring 条件接口 - Spring MultiValueMap - Spring MethodOverride - Spring BeanDefinitionReaderUtils - Spring PropertyPlaceholderHelper - Spring PropertySource - Spring PlaceholderResolver - Spring-AnnotationFormatterFactory - Spring-Formatter - Spring-Parser - Spring-Printer Spring5 新特性 - Spring5-spring.components 解析 Spring RMI - Spring RMI Spring Message - Spring EnableJMS - Spring JmsTemplate - Spring MessageConverter SpringBoot - SpringBoot run 方法解析 - SpringBoot 配置加载解析 - SpringBoot 自动装配 - SpringBoot ConfigurationProperties - SpringBoot 日志系统 - SpringBoot ConditionalOnBean Spring Cloud - Spring Cloud Commons 源码 - Spring Cloud OpenFeign 源码 - Spring Cloud Gateway 源码 SpringSecurity - SpringSecurity 请求全过程解析 - SpringSecurity 自定义用户认证 - SpringSecurity 流程补充 MyBatis 基础支持层 - 反射工具箱和 TypeHandler 系列 - DataSource 及 Transaction 模块 - binding 模块 - 缓存模块 核心处理层 - MyBatis 初始化 - SqlNode 和 SqlSource - ResultSetHandler - StatementHandler - Executor 组件 - SqlSession 组件 类解析 - Mybatis-Cache - Mybatis-log - Mybatis-Reflector - Mybatis-Alias - Mybatis-Cursor - Mybatis-DataSource - Mybatis-DynamicSqlSource - Mybatis-MapperMethod - Mybatis-MetaObject - Mybatis-MethodSignature - Mybatis-ObjectWrapper - Mybatis-ParamNameResolver - Mybatis-SqlCommand - Mybatis-GenericTokenParser Netty 网络 IO 技术基础 - 把被说烂的 BIO、NIO、AIO 再从头到尾扯一遍 - IO 模型 - 四种 IO 编程及对比 JDK1.8 NIO 包 核心组件源码剖析 - Selector、SelectionKey 及 Channel 组件 Netty 粘拆包及解决方案 - TCP 粘拆包问题及 Netty 中的解决方案 Netty 多协议开发 - 基于 HTTP 协议的 Netty 开发 - 基于 WebSocket 协议的 Netty 开发 - 基于自定义协议的 Netty 开发 基于 Netty 开发服务端及客户端 - 基于 Netty 的服务端开发 - 基于 Netty 的客户端开发 Netty 主要组件的源码分析 - ByteBuf 组件 - Channel 组件 和 Unsafe 组件 - EventLoop 组件 - ChannelPipeline 和 ChannelHandler 组件 - Future 和 Promise 组件 Netty 高级特性