项目概述

中间件开发

年纪轻轻,为什么要搞中间件开发?说到底,为什么要扒开CRUD的表面,深入到核心源码实践学一些中间件开发技能,还不是希望自己对技术栈学习有一定的深度,免得面试时被人忽悠压薪资。

全小册19个章节,包括16个中间件的设计和开发,包括测试案例共30个代码库提供给读者学习使用。小册实现的中间件场景涵盖:技术框架、数据服务、数据组件、分布式技术、服务治理、字节码、IDEA插件七个方面,贯穿整个互联网系统架构中常用的核心内容。

核心技术问题

  • 类的代理、反射调用是在什么场景用到的?
  • 自定义注解是怎么和切面一起获取到信息使用的?
  • 你需要的yml配置信息是如何被SpringBoot加载并初始化的?
  • Bean 是如何被注入到 Spring 容器,提供服务的?
  • ORM 框架是怎么解决不需要写接口的实现类就能执行CRUD操作的?
  • 扰动函数和数据库路由实现中的数据散列有什么关系?
  • 分布式任务调度与zookeeper配置中心是怎么联动的?
  • 字节码插桩对方法增强怎么拦截程序方法运行时信息?

核心技术栈

中间件技术栈
技术框架
Spring、SpringBoot配置加载、自定义注解、扫描注册Bean等,以及ORM框架设计原理和实现
数据服务
Mysql、Redis、Elasticsearch数据服务的使用和封装,包括JDBC、Jedis、x-pack等组件
数据组件
简化数据服务使用的组件开发,如ORM框架、查询映射等面向对象开发包装
分布式技术
RPC框架、注册中心、分布式任务调度等分布式架构核心技术的设计和实现
服务治理
熔断、降级、限流、切量、黑白名单以及非入侵式扩展增强等服务治理组件
字节码&插件
字节码插桩、JVMTI、IDEA插件开发等技术,实现非入侵式监控和开发工具

中间件实现展示

你会学到什么?

1
Spring 核心技术

深入学习 Spring 对配置文件的加载、Bean 扫描、定义、注册等核心机制,掌握 Spring Boot 关于 Starter 开发的常用技术手段和技巧。

配置文件加载机制
Bean 扫描与注册
Starter 开发技巧
2
中间件设计实战

掌握 ORM、RPC、数据库路由、服务治理、系统监控、IDEA插件等各类场景下的中间件设计,从理论到实践全面提升。

ORM 框架设计
RPC 框架实现
服务治理组件
3
核心技术运用

学习类的代理、反射调用、切面处理、字节码插桩、扰动函数增强散列以及JVMTI等核心技术的实际运用。

代理与反射
字节码插桩
JVMTI 技术

适宜人群

Java 开发者
具备 Java 编程基础的研发人员,略懂部分框架源码,经常使用各类技术组件
技能提升者
需要提升个人的核心技术能力,突破技术瓶颈的开发人员
中间件爱好者
对中间件开发感兴趣,但不知道从哪入手的技术人员
Starter 开发者
有在 SpringBoot 开发 Starter 的技术需求的开发者

加入小傅哥技术社群

加入小傅哥技术社群,学习全部实战项目。包括 SpringBoot 中间件开发在内的多个企业级项目,全程手把手教学,提供完整的学习路径和技术支持,助你快速提升技术能力!