后端开发高手必备技能--从0到1手写一套企业级网关

乔峰_悟言_双架构师 | 技术专家

内容
课程难度
进阶
视频时长
30小时
学习人数
236人
课程评分
7.33分
简介 目录 服务

课程服务

服务
问答专区 源码开放 教辅材料 Git代码存储
环境
Netty 4.x
适合人群
Java后端开发工程师
技术储备
具备Java Web项目开发经验

课程讲师

乔峰_悟言_双架构师

技术专家

乔峰:技术专家/架构师 多家大厂后台研发和架构经验,负责复杂度极高业务系统的模块化、服务化、平台化的研发工作,具有丰富的带团队经验,深厚的人才识别和培养的积累。 悟言:技术专家 拥有丰富的后端开发及架构经验,负责过多领域的项目设计及开发工作,上亿级请求的复杂业务系统的设计、开发及优化。丰富带领团队经验,技术、业务过硬的IT技术专家。

咨询更多

公司大多都用现成的网关,自己做网关性能上有哪些提升?有哪些使用场景呢?

亲,您好~课程中网关是使用Java原生框架开发,属于轻量级的企业API网关,不用加载和运行太多不需要的插件,完全可以根据自己的需求对插件即插即用,这也是性能提升的一个方面。2、作为一个网关,不仅要网关本身的性能要高,通过自研网关,加上Promethus监控,还能掌握后端服务的性能情况,帮助后台服务进行性能优化,重全局的角度优化我们的系统性能。运用场景方面呢,不同的业务适合不同的垃圾收集器,可以根据压测结果,选择适合业务的垃圾收集器,课程中我们将会运用ZGC垃圾收集器作为案例,然后进行分析。其他方面:1. 用开源网关也是需要维护和二次开发,通过本课程可以获得网关的自研和开发能力。2. 自研网关在可维护性,灵活性,等都有优势,性能提升只是其中一部分。3. 通过本课程除了获得网关相关的开发知识,还能学到中间件的研发思路,以及对一些开源工具的使用,例如微服务注册中心和分布式配置中心nacos,监控平台Prometheus,网络编程框架Netty等,祝您学习愉快~

1年多的Java开发经验适合学这个课吗?

需要了解netty的基础吗

相关课程

Java 亿级项目架构设计与落地应用

全网稀缺 一次性掌握超大型项目架构设计与落地能力 快速铲平架构理论门槛 迅速拨高架构实际应用能力 帮助3年以上Java工程师突破能力瓶颈,技术发展空间更上一层楼

体系课 112人学习

Java高级工程师

通过一个大型项目贯穿,掌握主流技术栈,提升技术广度与深度 实现复杂度极高的招聘业务,用户端+企业端+SaaS平台全覆盖 构建技术+业务+工程实战+就业服务闭环,实现从初中级到高级工程师的跨越!

体系课 430人学习

Java工程师

综合就业常年第一,编程排行常年霸榜,北上广深月薪过万! 不需要基础,无需脱产即可学习,只要你有梦想,想高薪! 全新升级:技术栈升级(包含VUE3.0,ES6,Git)+项目升级(前后端联调与功能升级)

体系课 16172人学习

Java架构师-技术专家

Java程序员进级架构师的核心技能图谱与最佳成长方案

体系课 2672人学习

Spring Cloud / Alibaba 微服务架构实战

张勤一java开发工程师

实战课 1206人学习

SpringBoot+Vue3 项目实战,打造企业级在线办公系统

神思者技术总监

实战课 2225人学习

Java分布式架构设计与开发实战

大能老师资深工程师

实战课 324人学习

Netty+SpringBoot 开发即时通讯系统

conan老师高级工程师

实战课 493人学习

基于GO语言,K8s+gRPC实战云原生微服务开发

一凡360系统架构师

实战课 179人学习

新版Springboot3.0打造能落地的高并发仿12306售票系统

甲蛙高级技术专家

实战课 831人学习

MyBatis-Plus + SpringBoot实现简单权限管理

老猿JAVA开发工程师

免费课 12828人学习

SpringBoot2.x进阶 基于云服务器的中间件整合与应用

风间影月技术总监

免费课 2598人学习

Java 最新版并发编程入门与春晚抢红包实战

Alfred_li资深JAVA开发工程师

免费课 3038人学习

Spring Boot3.0最新版入门与商品特征打标实战

Er十七资深Java开发工程师

免费课 3327人学习

JDK19 新特性入门与案例实战

Tim老师高级软件工程师

免费课 1374人学习

IDEA开发工具最新版入门与案例实战

松思园高级软件工程师

免费课 3833人学习

已经到底部,没有更多内容了
已完结

第1章 课程介绍与学习指南

1-1  课前必读(不读错过一个亿)

1-2  自研网关-课程导学 (15:32)试看

第2章 网关的整体介绍,并分析自研网关的重要性

2-1  一起带你全面的了解网关 (13:16)

2-2  关于网关业界常见方案对比 (04:31)试看

2-3  为什么我们要自研网关 (05:34)

2-4  本章作业

2-5  本章资料

第3章 详解网关的整体架构设计

3-1  一步步带你详细分析项目主流程 (03:44)

3-2  详解高性能网关各个功能点 (03:30)

3-3  合适的技术才能构建好的应用-技术选型 (03:53)

3-4  更全面的设计要点分析-异步化 (15:32)

3-5  更全面的设计要点分析-异步神器CompletableFuture初探(一) (09:31)

3-6  更全面的设计要点分析-异步神器CompletableFuture初探(二) (12:52)

3-7  更全面的设计要点分析-缓存缓冲 (05:07)

3-8  手把手带你构建完整的项目架构图 (04:01)

3-9  完整的网关流程框架设计 (04:34)

3-10  本章作业

3-11  本章资料

第4章 实战-构建网关的核心功能(上)

4-1  手把手带你搭建多模块项目工程 (05:35)

4-2  万里长征第一步-构建启动类BootStrap (04:04)

4-3  核心模块领域模型设计 (11:23)

4-4  实战-构建网关核心功能-可扩展性上下文接口定义 (20:34)

4-5  实战-构建网关核心功能-上下文基石BasicContext定义 (14:35)

4-6  实战-构建网关核心功能-参数载体Request对象接口定义 (13:54)

4-7  实战-构建网关核心功能-实现参数载体请求对象Request(一) (16:15)

4-8  实战-构建网关核心功能-实现参数载体请求对象Request(二) (17:37)

4-9  实战-构建网关核心功能-实现参数载体请求对象Request(三) (05:48)

4-10  实战-构建网关核心功能-企业级通用返回对象Response (14:08)

4-11  实战-构建网关核心功能-可插拔式规则对象设计与定义(一) (10:58)

4-12  实战-构建网关核心功能-可插拔式规则对象定义与设计(二) (10:29)

4-13  实战-构建网关核心功能-可扩展性网关上下文GatewayContext实现 (17:44)

4-14  本章作业

4-15  本章资料

第5章 实战-构建网关的核心功能(下)

5-1  网关核心配置顶层设计(一) (05:12)

5-2  网关核心配置顶层设计(二) (13:54)

5-3  网关核心配置顶层设计(三) (04:20)

5-4  定义网关生命周期组件LifeCycle (01:55)

5-5  初步探索异步的、事件驱动的网络应用程序框架和工具Netty (05:01)

5-6  实战-构建网关核心功能-基于Netty构建服务端 (09:59)

5-7  实战-构建网关核心功能-Netty服务端Handler实现 (04:08)

5-8  核心处理流程能力构建-Netty核心处理器实现主流程 (21:08)

5-9  核心处理流程能力构建-基于Netty构建客户端 (08:28)

5-10  网关启动核心容器实现 (06:50)

5-11  核心容器效果演示 (01:58)

5-12  本章作业

5-13  本章资料

第6章 实战-承上启下注册中心和配置中心的设计及实现

6-1  最流行的微服务注册中心和分布式配置中心-Nacos详解 (09:09)

6-2  注册中心管理抽象接口设计 (16:15)

6-3  接入Nacos注册中心(一) (24:17)

6-4  接入Nacos注册中心(二) (07:07)

6-5  客户端接入注册中心-注解定义 (10:09)

6-6  客户端接入注册中心-注解扫描实现 (13:14)

6-7  客户端接入注册中心-抽象注册管理器实现 (10:00)

6-8  下游Spring-MVC服务实现注册中心接入 (19:36)

6-9  下游Dubbo服务实现注册中心接入 (09:42)

6-10  客户端基于Springboot自动装配实现 (08:57)

6-11  配置中心管理抽象接口设计 (06:49)

6-12  接入Nacos配置中心 (10:43)

6-13  注册中心和配置中心效果演示 (06:03)试看

6-14  本章作业

6-15  本章资料

第7章 实战-插拔式动态过滤器链条实现

7-1  可插拔式插件化开发初步探索以及顶级接口设计 (09:04)

7-2  利用设计模式实现过滤器链条(一) (14:44)

7-3  利用设计模式实现过滤器链条(二) (12:10)

7-4  规则模型Rule封装-不同路径能绑定不同规则 (16:13)

7-5  带你探索企业级负载均衡的方案 (11:08)

7-6  负载均衡算法设计以及实现 (25:31)

7-7  负载均衡过滤器最终实现 (05:12)

7-8  路由过滤器实现以及过滤器里程碑演示(一) (20:37)

7-9  路由过滤器实现以及过滤器里程碑演示(二) (10:48)

7-10  路由过滤器实现以及过滤器里程碑演示下(三) (08:44)

7-11  本章作业

7-12  本章资料

第8章 实战-真正带你开发一套完整的基础网关项目

8-1  网关稳定性基石--高可用方案(一) (15:32)

8-2  网关稳定性基石--高可用方案(二) (11:55)

8-3  网关稳定性基石--高可用方案(三) (05:03)

8-4  应对多变的网络环境--异常处理机制设计与开发(一) (14:50)

8-5  应对多变的网络环境--异常处理机制设计与开发(二) (17:32)

8-6  应对多变的网络环境-异常处理重试机制的设计与开发(三) (12:14)

8-7  带你实现一套完整的企业级网关-限流实现(一) (15:48)

8-8  带你实现一套完整的企业级网关-限流实现(二) (27:24)

8-9  带你实现一套完整的企业级网关-限流实现(三) (11:10)

8-10  保护下游服务-熔断降级设计与功能开发(一) (11:02)

8-11  保护下游服务-熔断降级设计与功能开发(二) (09:33)

8-12  用户鉴权设计与功能开发(一) (06:07)

8-13  用户鉴权设计与功能开发(二) (09:19)

8-14  用户鉴权设计与功能开发(三) (03:50)

8-15  多版本共存--灰度发布设计与功能开发(一) (02:39)

8-16  多版本共存--灰度发布设计与功能开发(二) (10:05)

8-17  多版本共存--灰度发布设计与功能开发(三) (02:44)

8-18  统计和监控-通过Promethus实现系统可观测性(一) (19:42)

8-19  统计和监控-Grafana展示数据面板(二) (06:02)

8-20  网关可观测性--log设计与功能开发 (07:04)

8-21  前端想提前联调--接口mock设计与功能开发 (07:55)

8-22  本章资料

第9章 实战-进一步优化,构建一款高性能的网关

9-1  压测利器Jmeter介绍 (02:50)

9-2  压测利器Jemeter对网关进行压测 (05:37)

9-3  合理设置线程数-Netty线程介绍(一) (02:34)

9-4  合理设置线程数-Netty线程优化(二) (07:33)

9-5  高级工程师加薪神器JVM调优-jvm调优介绍(一) (05:09)

9-6  高级工程师加薪神器JVM调优-ZGC切换以及压测演示(二) (06:42)

9-7  吞吐量为王-利用无锁的缓存框架disruptor做缓冲区(一) (12:52)

9-8  吞吐量为王-利用无锁的缓存框架disruptor做缓冲区(二) (15:54)

9-9  吞吐量为王-利用无锁的缓存框架disruptor做缓冲区(三) (16:28)

9-10  吞吐量为王-利用无锁的缓存框架disruptor做缓冲区(四) (09:50)

9-11  吞吐量为王-利用无锁的缓存框架disruptor做缓冲区(五) (20:08)

9-12  吞吐量为王-利用无锁的缓存框架disruptor做缓冲区(六) (07:27)

9-13  高性能缓存Caffine提高并发能力 (12:56)

第10章 互联网大厂对新技术的实践如何做的?

10-1  专为云原生、基于容器的分布式系统设计的监控神器Skywalking介绍 (09:40)

10-2  专为云原生、基于容器的分布式系统设计的监控神器Skywalking接入网关和微服务 (09:19)

10-3  利用监控神器Skywalking优化网关 (07:08)

10-4  新一代响应式、高性能 WEB 容器WebFlux入门 (08:28)

10-5  本章资料

第11章 深入课程疑难问题

11-1  Netty服务端启动过程源码解析-初步探索NIO(一) (16:46)

11-2  Netty服务端源码启动分析-NIO初步探索(二) (05:50)

11-3  Netty服务端源码启动分析-NIO初步探索(三) (03:37)

11-4  Netty启动类源码分析(一) (23:56)

11-5  Netty启动类源码分析(二) (07:55)

11-6  Netty启动类源码分析(三) (15:55)

11-7  Netty接收客户端请求过程解析(一) (13:22)

11-8  Netty接收客户端请求过程解析(二) (02:47)

11-9  网关发送请求过程解析(一) (14:32)

11-10  网关发送请求过程解析(二) (08:00)

11-11  SPI使用过程中的问题讲解 (13:48)

第12章 彩蛋-深入了解Disruptor

12-1  Disruptor架构以及核心初步认识 (08:40)

12-2  Disruptor事件处理过程以及使用场景探讨 (05:28)

12-3  深入讲解Disruptor源码(一) (15:15)

12-4  深入讲解Disruptor源码(二) (15:51)

第13章 经典面试专题详解

13-1  如何向面试官展示项目 (20:12)

13-2  Netty高频面试题(一) (07:45)

13-3  Netty高频面试题(二) (11:25)

13-4  Java并发编程面试题 (18:14)

13-5  微服务架构面试题讲解 (11:38)

13-6  微服务架构组成讲解 (23:53)

13-7  微服务设计原则讲解 (20:54)

13-8  聊聊JDK17新特性(一) (21:09)

13-9  聊聊JDK17新特性(二) (17:28)

第14章 课程总结

14-1  课程总结 (08:34)

领取优惠券
环境参数
Netty
4.x
Nacos
2.x
JDK
17
服务

问答专区

讲师提供答疑服务,帮助大家扫除学习障碍,达成学习效果

源码开放

课程提供全部源码,你可以自行修改、优化

教辅材料

讲师提供各种原创学习资料,帮助消化课程知识,扩展技术视野

Git代码存储

所有项目源码都通过Git方式托管及下载

日志
适合人群

Java后端开发工程师

缺少自研项目开发经验

欠缺实际生产问题解决能力

技术储备

具备Java Web项目开发经验

了解微服务架构开发流程