|
目录:
6 S$ Z$ O S5 n4 U/ Y! M7 Q u第1章 课程介绍与学习指南4 节 _ 39分钟3 R& b' J2 F# \% j [ l9 @* A
本章主要对课程做整体介绍,其中包括:课程要解决的问题、课程特色和亮点、课程内容安排、学完大家的收获,以及在学习方法上提出的建议与指导。
3 K# G4 k' B) ~0 ?
6 ~: _: ?2 p0 v* E6 ~第2章 12306这个系统架构到底有多牛?8 节 _ 71分钟
! E# d3 }$ j2 ~: K Q! W% V4 I4 Q本章主要对课程为什么选择12306课程作为实战项目,以及该项目具备哪些亮点及优势做全面分析介绍,从而让大家了解课程设计的初衷以及要达到的目的。
9 N" T; Y- a; F+ t
! V/ ?& R; X" f2 C( z# u: ?. X# y1 X第3章 最新版的SpringBoot3&JDK9~17新特性详解14 节 _ 101分钟
2 m# J2 m0 k, ^9 M4 w+ E; p目前市面上大多数Java项目都还在用JDK1.8,导致很多程序员也没用过高版本JDK,本章将带大家从JDK9到JDK17学习每个版本的一些重要的特性,以及最新发布的SpringBoot3的新特性,并在项目开发中全面应用。) b% S" N5 n* P J) V3 \0 T
) r4 |3 {. ]" z
第4章 新版Spring Cloud Alibaba与Springbooot搭建后端架构20 节 _ 261分钟
+ ^ ~; g! G3 z( Y6 _6 I% _1 u5 u本章主要学习微服务项目架构的搭建,使用Maven搭建Spring Cloud Alibaba微服务架构,学习微服务核心组件:注册中心Nacos和路由Gateway,完成项目的工程配置,如:Git, Maven, 热部署、编码等。
6 M* l7 X1 y- m2 E
) H$ A( [( t8 ?, w- Z9 F# N# g第5章 使用Vue3 + Vue CLI 实现系统前端模块的搭建13 节 _ 207分钟
+ K$ b2 Q: d5 Y1 p6 |本章将完成项目前端模块搭建,创建Vue CLI 项目Web,集成支持Vue3的UI组件库Ant Design Vue,完成网站页面基本布局,集成Vue-Router路由、Axios等组件。
7 C4 c+ g$ K, r3 }' p& b9 A
. h2 ^' }3 Z b( G8 ]! Z0 z5 G& l第6章 实现JWT单点登录功能10 节 _ 103分钟, V* q& C+ c' S1 w+ U
单点登录是企业项目中必有的一个功能。本章介绍两种常见的单点登录信息,一种是redis+token的方案,一种是jwt方案,都是项目中常用的,课程中使用的是jwt方案来实际单点登录功能。
+ f$ `5 h3 f& o3 \
" f( u* I+ y5 B6 L9 _4 a第7章 12306系统会员基础功能的实现18 节 _ 210分钟! t& e V. c" x+ l+ a$ x& V3 }
本章将带领大家完成会员模块的相关功能,其中包括会员注册、登录,乘车人管理等,详细讲解单点登录,以及使用Gateway增加登录校验,对会员业务功能进行统一做异常处理,并对乘车人相关接口、界面进行开发,为后续购票功能做准备。...3 ?# ?! B8 x" u. M
2 X& k5 ^- f! B" C, V+ H5 s
第8章 自制前后端代码生成器提高开发效率11 节 _ 167分钟8 j* a L( Q8 \0 U8 N2 |+ ]( l2 p
本章将演示代码生成器的制作,学习模板引擎freemarker的使用。通过代码生成器可以快速生成dto、service、controller和vue界面代码,再配合上mybatis generator,可以快速完成单表的增删改查管理功能,极大的提高开发效率。另外,本章的知识也可应用于静态页面生成、导出复杂excel等涉及文件生成的场景。...
# X8 P2 V# V1 g4 B% }, @9 n ?2 b2 B W8 \
第9章 利用代码生成器快速实现火车基础数据的维护20 节 _ 261分钟3 n$ K h& I |4 _8 R8 G
本章将带大家开发车次信息管理功能,以及车次、车厢筛选的相关接口的开发,完善车站、车厢管理、座位管理等界面的功能,利用代码生成器,可快速完成多张表的增删改查功能。
; l. P. R# t1 X0 M; \: I( o( n5 w N& F' Z J6 ?* B$ l
第10章 使用调度框架quartz,为12306系统增加定时调度功能10 节 _ 87分钟
9 F* Z: q3 F7 _6 h v1 f定时调度模块在微服务系统中是非常常见,也是非常重要的一个模块,通常一些逻辑复杂,实时性不高的功能会放到定时调度模块中执行。本章将对调度框架quartz及其异步线程组合做详细讲解。% Q. ?- I# o- ?$ `9 B
( R, B: a* Z/ O- P6 w; o) O8 S第11章 通过火车基础数据生成每日火车数据13 节 _ 188分钟
5 h; m& c r! q; s+ E" b本章介绍利用上一章知识,制作定时任务,定时生成每日车次信息,包含车次、车站、车箱、座位,同时也包括余票信息,为后续余票查询和售票功能做准备。当定时任务异常时,使用手动生成车次信息作为补偿的实现。
1 N; Z* ]* M( ?/ m \* k; i% W/ W+ A4 w) O8 C1 `: u; _: U
第12章 基本的车票预定功能开发24 节 _ 464分钟) e8 f6 b0 D; G. O: f1 R
本章完成余票查询与购票功能,先不考虑高并发,优先完成主功能逻辑,为后续高并发场景做准备,学习服务间调用组件Feign的使用。
. I/ V; D0 P* y5 W. f* x8 b/ P' e8 t) Z
第13章 集成注册中心与配置中心组件Nacos(动态修改线上的配置)10 节 _ 88分钟
% l; W* j/ P1 r7 a9 `本章介绍Spring Cloud Alibaba的核心组件之一:Nacos,用作注册中心和配置中心。通过注册中心,可以查看所有的应用列表,机器数、健康数等信息;通过配置中心,可以动态的修改应用配置,无需重启应用,实时生效。
6 t, n! ?! t/ B" A0 ?
2 [# K3 w# ?; q0 O9 E第14章 高性能余票查询的实现(前端缓存&本地缓存&分布式缓存)10 节 _ 96分钟
$ H# D% Y; t! ^7 x) J, _本章主要介绍在高并发场景中,如何实现高性能的余票查询,学习缓存技术,并对缓存常见问题进行讲解,如击穿、穿透、雪崩等,解决如何增加更新余票的定时任务及余票缓存初始化等问题。同时讲解前端缓存、本地缓存、持久层一级/二级缓存、分布式缓存等。...$ O; O) {+ g$ q( z
% N; r/ j/ ~: a. x$ B4 g
第15章 集成分布式事务组件Seata(解决分布式系统中的数据一致性问题)8 节 _ 93分钟
: }8 L1 b5 \, e# J& X在微服务架构中,一个功能会同时操作多个应用,传统的事务无法保证多个库之间的数据一致性,从而需要做很多额外的补偿动作和分支判断,有了Seata之后,可以很方便的开启分布式事务,保证数据最终一致性。% w$ h. Z* A" x) u/ c1 l+ j$ l) O' a
7 c' n8 I, e8 v( f, Z! K第16章 高并发抢票时,利用各种锁解决车票超卖问题(JDK锁&分布式锁&看门狗设计&红锁)9 节 _ 119分钟: x8 ~6 g0 f1 g7 ^ @! D9 T
超卖问题在高并发场景中非常常见的,本章将讲解如何利用各种锁防止超卖,重点学习Redis分布式锁,解决如何实现分布式锁加过期时间与原子性加锁等问题。1 Q) F0 \& v/ X( E9 I0 D |
8 V6 e( |& K) w0 g) m$ |( l第17章 高并发抢票时,使用Sentinal组件进行请求限流降级(过滤90%的无效请求)12 节 _ 127分钟5 s( p" c- w/ H2 r+ n6 p7 V: p7 |
本章学习常见的限流手段,重点学习Sentinal的使用,在高并发中,短时间内会有大量请求进来,但并不是所有的请求都能买到票,所以我们需要对请求做限流,以减轻服务器无谓的请求。" K4 P$ z3 v% V; L K& D$ B$ s- r
) a2 `/ B4 o/ ^" d; ^% N
第18章 高并发抢票时,防止机器人刷票的令牌大闸,可减轻服务器的压力(防刷+限流)8 节 _ 87分钟
9 l1 f9 I. O# K4 z+ i本章主要讲解令牌大闸的使用,进一步减轻服务器压力,对令牌桶与令牌大闸及如何增加通用秒杀令牌大闸做详细介绍,实现如何为令牌接口增加防机器人刷票的功能,以及如何为令牌接口设置限流等。9 j# @9 B; q6 i/ \: _# p
3 `9 a( Y; z) n: T. ^, V第19章 利用流行的MQ组件对请求做削峰处理,解决吞吐量问题(实现最短时间内给用户反馈)12 节 _ 143分钟! s( s+ x2 e" _* q- C
在高并发中,除了解决超卖问题,还要解决吞吐量问题,本章主要利用MQ对请求做削峰处理,并引入引入排队机制,在最短的时间内,给用户以反馈。/ p3 R/ d+ x& i6 F2 W5 p
4 f6 B1 }* _1 B第20章 压力测试-高并发优化前后的性能对比(单机性能提升25倍左右)7 节 _ 44分钟7 j5 a+ a3 H8 ]/ H
本章介绍介绍压测相关的知识,并使用JMeter对代码进行压测,对比高并发优化前后的性能,从结果看出,不管从吞吐量还是并发量来说,单机性能都提升了25倍左右。3 X9 h* R/ n% Z* X! d( z
8 B$ d" `" P& y s, [- \/ Z第21章 企业级项目上云(阿里云部署)17 节 _ 128分钟
4 t% M) |* v' ~本章主要介绍如果将写好的项目部署到生产环境,供用户访问,包括前后端发布,及微服务器nacos, sentinal等组件的发布。
% Q, A7 u2 I3 y% t6 y% i' {( H; U X2 s2 T7 M, v
第22章 项目优化9 节 _ 73分钟
! g& O# p. ^2 W# ]$ G; M本章从两个方面对项目做优化:1. 项目功能,在前面的章节已经完成了项目的核心功能,但还有些细节功能可以完善,本章将对项目功能做查缺补漏;2. 体验功能,项目做了很多高并发的优化,单从现有界面的操作来看,体现不出项目的特性,为了让大家更好的体验这个项目的功能,本章将加入一些体验功能。...2 ~6 i8 h7 _! k- r
r& J% u" J- O( ^
第23章 课程总结1 节 _ 8分钟: v5 f; t, Q5 t9 j
本章主要对课程内容进行梳理,总结课程中的重难点,帮助大家更好的学习该课程,提升自身的技术水平,在职场中更具有竞争力。$ Q$ Y& H2 S1 G4 I \4 e: [% b
2 G* a# Q1 r, w4 G
0 P5 ?6 d1 O! O. R1 P! ?& l( \4 N资源下载地址和密码(百度云盘): [/hide] 百度网盘信息回帖可见
$ m5 \$ ]/ Q# V% g
, A) d; A( H, _$ [, f! H
" o4 G# M. I9 ?! F: \& z! u
0 y( P: z% k$ l" r' A本资源由Java自学网收集整理【www.javazx.com】 |
|