1-100_9-4什么是JWT授权机制.mp4 81.94M
# w) z T: A- V D) c8 `├──1-10_1-10数组.mp4 146.25M2 C. j* ]) Y0 ~
├──1-11_1-11切片.mp4 303.54M+ h f% o0 Z- T2 n+ Y: R! E
├──1-12_1-12Map.mp4 125.33M
2 a, S Y( a; j( j3 H├──1-13_1-13结构体与方法.mp4 129.03M* c: W0 k& A5 D# {, L2 X; s
├──1-14_1-14封装.mp4 182.58M
8 _1 w: p5 u% ^: e3 }├──1-15_2-1接口是什么.mp4 156.96M- L! I7 ?8 N0 m# l5 y/ O* O/ \' o
├──1-16_2-2Go语言中的鸭子类型.mp4 83.91M6 O7 ~8 {$ o+ B1 \( B w/ ^6 ^8 j
├──1-17_2-3接口的实现.mp4 97.63M
7 w; j/ W( r' S( L├──1-18_2-4接口的值到底是什么类型.mp4 103.39M
; u/ t3 @% Q& X0 _1 u0 N2 c├──1-19_2-5接口组合的威力.mp4 59.74M* Z, }, L5 q% g4 V+ A% `' G
├──1-1_1-1安装Go语言.mp4 154.17M
& f" N8 P" B% H+ w├──1-20_2-6Go标准库中的接口.mp4 184.95M
?- x8 X* q( K& E1 V9 Q$ W! P( `├──1-21_2-7函数式编程.mp4 280.53M
( r0 m8 j2 a7 h8 ]) A├──1-22_2-8延迟调用.mp4 125.25M
3 s2 u2 W! [# {& R- N9 F- D" o├──1-23_2-9错误处理.mp4 98.28M6 T8 _) |) j0 R( o! l9 [3 Q0 _
├──1-24_2-10测试.mp4 101.63M: k. ]: F( h9 W+ O
├──1-25_2-11协程.mp4 110.16M
6 y+ G% D {; y7 w4 e7 c+ B: y6 Q├──1-26_2-12Go语言调度器的作用.mp4 37.92M
9 w' I9 A4 {, W$ n6 M. b├──1-27_2-13通道与协程.mp4 113.63M+ U7 d B# l: P/ ]% V( K! o0 I0 h$ e
├──1-28_2-14WaitGroup.mp4 43.80M1 m6 J/ ~/ u. G- E
├──1-29_2-15Select与协程.mp4 182.34M
! G3 v" ^; e! |: v: J9 ?8 F├──1-2_1-2安装ide.mp4 108.03M
3 V1 [0 q* h }2 ~- O8 a├──1-30_2-16锁Mutex.mp4 137.89M J: l4 z( t6 z% M9 T
├──1-31_2-17Go语言的依赖管理.mp4 100.02M- p# q( F( M" [1 }0 X+ k5 h5 S. O
├──1-32_2-18GoModule.mp4 100.47M9 n( ]& i% G x( ?, Y9 V
├──1-33_3-1Gin介绍.mp4 197.86M% Y5 G4 V1 I: S/ Y) |6 y
├──1-34_3-2Default()与New()初始化都干了什么?有什么区别?.mp4 53.31M; \3 h6 K$ R6 A3 t# q9 I& }
├──1-35_3-3Gin非常贴心的Group功能.mp4 139.80M6 \, ^* s R1 B3 b
├──1-36_3-4Gin是如何获取Url参数的.mp4 228.95M
" `! Q7 K" T2 w% Q├──1-37_3-5Gin是如何处理GET和POST请求的.mp4 207.88M
, S1 |. b. N3 Y├──1-38_3-6Gin如何处理表单验证.mp4 122.82M" ~1 e; S3 Q9 H- b- ~" n9 r
├──1-39_3-7重点!Gin如何使用中间件?.mp4 302.77M l; D3 A& V, b3 ]
├──1-3_1-3定义变量.mp4 268.64M
0 o# e7 ]/ `8 r: ^- D; |1 ]├──1-40_3-8Gin的中间件是如何退出的?.mp4 142.11M6 @' A- i5 o( N8 N
├──1-41_3-9如何让你的Gin程序安全优雅的退出.mp4 101.09M
! ~1 C* F5 k$ |& c' n├──1-42_4-1ORM的前世今生.mp4 49.46M
8 H# M8 m ]. v; o8 z) ?├──1-43_4-2Go语言如何连接数据库.mp4 165.54M
! ~$ H3 I4 J- x; S' H+ k├──1-44_4-3如何通过结构体生成表结构.mp4 114.99M- a1 \; T1 f. v, a1 {: B! u+ |
├──1-45_4-4数据库的基础操作-增删改查.mp4 251.73M
4 f; x2 Y1 w$ T6 R4 d├──1-46_4-5Gorm更新零值的第二种解决方案.mp4 96.59M
9 J( b; B/ |6 c├──1-47_4-6如何使用Gorm的Tag.mp4 97.82M" P3 P* ~% |- \/ T% h
├──1-48_4-7避坑-update更新默认值.mp4 163.93M
- T5 K# l( U* l" u- P├──1-49_4-8批量添加数据有几种方法.mp4 158.34M8 |& f i, T9 D; i7 I2 n
├──1-4_1-4内建变量.mp4 236.53M7 b, U; E* S& u
├──1-50_4-9查询记录的几种方式.mp4 273.96M- \, B) I/ y2 j3 N; o
├──1-51_4-10带条件的查询.mp4 159.70M
' @3 D# J3 U* ]) V5 m├──1-52_4-11多种更新操作.mp4 283.77M* O! J" D( _5 c0 d0 j' L
├──1-53_4-12真删除还是假删除.mp4 165.37M
0 }% j' K- n( J├──1-54_4-13如何添加有依赖关系的数据.mp4 111.23M, O& c( l$ m- {& b, f9 e" {5 y
├──1-55_4-14如何查询有依赖关系的数据.mp4 130.36M
) }: W4 ?4 P. U9 y5 c. W├──1-56_4-15一对多关系的数据添加和查询.mp4 206.21M% l6 ~; t0 q4 y0 `. @0 D y. a
├──1-57_5-1RPC简介.mp4 36.37M" x3 L8 W N# C6 x. x7 l0 m
├──1-58_5-2Http的客户端如何调用服务端.mp4 160.70M
- u0 Y; L+ C& Y/ P├──1-59_5-3你要知道的RPC四要素.mp4 46.42M
! ?$ o$ n4 Q8 @├──1-5_1-5常量与枚举.mp4 71.36M
& [$ E$ \. X; w8 s├──1-60_5-4第一个原生的GO语言RPC示例.mp4 209.06M
( w' ~) \$ \1 K5 g, n& J; ~: }├──1-61_5-5如何让原生rpc跨语言如何高并发.mp4 173.07M/ F8 D: y m- l9 C
├──1-62_5-6grpc+protobuf在一起.mp4 80.34M8 x7 C. v& L8 l. l5 u1 @% |+ i
├──1-63_5-7玩转protobuf必备工具.mp4 57.32M) R9 c8 u% J/ K# s: J0 f- Y$ B/ j
├──1-64_5-8编写第一个Protobuf文件.mp4 56.14M# U' ]% |" @ M) c0 i! L6 G9 ~& `
├──1-65_5-9用代码比较protobufvsjson.mp4 196.22M* X- p3 i4 x0 B" S. t n7 B/ \
├──1-66_5-10如何生成proto对应的protobuf+grpc的代码.mp4 126.38M
# E8 k1 S; {) }+ j# r$ ~% j├──1-67_5-11尝鲜GRPC+Protobuf.mp4 244.19M
0 J% N; M* ^) _, `, s, ^├──1-68_5-12GRPC的3种流式操作.mp4 698.94M2 \" S+ _, Z; T5 S
├──1-69_6-1Protobuf数据类型是如何与Go语言数据对应的.mp4 379.26M; f& q& T) y3 Y6 {6 r3 l7 P
├──1-6_1-6条件判断.mp4 167.55M
1 i$ Z. p: s$ \, C1 _7 _: L6 M├──1-70_6-2你真的了解go_package吗?.mp4 81.21M/ _- A u; I$ m* _" o. x
├──1-71_6-3这个锅是你的-proto顺序写错了.mp4 218.74M+ @+ z+ I! o5 |! g( }
├──1-72_6-4如何使用别人写好的proto文件.mp4 81.51M- T6 C1 x" h2 _( `
├──1-73_6-5message嵌套,你觉得好用吗?.mp4 85.91M
% k6 `$ N: l& X& v: Z$ Y├──1-74_6-6你要知道的Proto的枚举、map、timestamp3种类型.mp4 169.41M' ~2 f( H8 y/ Q6 I9 R
├──1-75_6-7GRPC调用其他GRPC是如何传递数据的.mp4 272.87M, s' x: D U' b$ W, P5 U
├──1-76_6-8GRPC的拦截器怎么做.mp4 326.37M
Q* X& P; ^# Z6 f/ D) t0 `├──1-77_6-9如何用Metadata+GRPC拦截器做认证.mp4 271.08M
8 L) K# P4 S9 Q$ \2 ~3 w├──1-78_6-10GRPC的错误处理如何做.mp4 204.08M
3 ^$ g, K a+ R6 ?" G# z├──1-79_6-11服务端如何返回错误,超时又怎么办.mp4 124.53M3 C+ e$ t% X C( W: \
├──1-7_1-7循环.mp4 110.99M" }& J3 N9 t; \
├──1-80_7-1如何高效的打印出日志.mp4 104.29M
x# d( G+ l) @, s2 a( v) M: t! s( E+ _├──1-81_7-2如何把日志输出都文件中.mp4 39.58M. ? v2 W5 \& H
├──1-82_7-3Gin+日志输出在一起.mp4 114.93M! D! F$ k. }' }0 _* Y3 D
├──1-83_7-4如何读取配置文件.mp4 116.58M
. k. S# A( k/ G9 w+ ^8 A├──1-84_7-5如何不改代码情况下切换本地配置和生产环境配置.mp4 86.56M
3 i; ~4 f! f! a; y8 W" e├──1-85_7-6gin+viper在一起.mp4 64.45M
# \5 M. ^2 y5 U4 x! u# y├──1-86_8-1账户微服务-表解构设计.mp4 34.01M
9 ^* f3 G! q0 Q! l; c* O- V├──1-87_8-2账户微服务-生成表结构.mp4 32.01M
4 J, |( R# m, v) J) @├──1-88_8-3账户微服务-proto文件定义.mp4 74.41M
$ s( H# F& X6 p. c# Q├──1-89_8-4获取账户列表.mp4 163.91M
8 n! d( V/ N2 B├──1-8_1-8函数.mp4 572.12M: l/ ]! `4 _" h% r" e1 {' T, ~" U
├──1-90_8-5通过手机号和Id获取账户信息.mp4 65.62M& j; g$ s( N' m, k
├──1-91_8-6密码加密的几种方式.mp4 110.92M9 g* ~2 }5 C+ [; V
├──1-92_8-7如何让md5更安全.mp4 70.16M
! m* W- u9 V) }8 O├──1-93_8-8新建账户.mp4 111.56M
* o! k0 F- y9 K├──1-94_8-9更新账户密码校验.mp4 62.96M
& N6 o! B T( S) L├──1-95_8-10单元测试.mp4 64.67M
0 b( v6 Z1 J9 O% T/ g7 m% t├──1-96_9-1gin+grpc在一起,实现账号服务调用-1.mp4 101.93M
" h- x2 N+ m, q) U8 q! ?├──1-97_9-1gin+grpc在一起,实现账号服务调用-2.mp4 128.97M
% N% V6 l; x% X7 G! H ~. F├──1-98_9-2前端如何传递参数给GRPC.mp4 21.58M
/ m7 ^2 n3 @+ z( I6 S├──1-99_9-3为什么session在微服务下被淘汰了.mp4 72.56M
. N+ ^3 L8 {4 R" ?2 N├──1-9_1-9指针.mp4 389.61M
; J6 s- v% e$ ~* t' M0 p├──2-100_18-8链路追踪+GRPC在一起.mp4 149.89M
- G. e6 I7 j* G I) A& Q├──2-10_10-3如何让HTTP服务轻松在注册中心里成功注册-2.mp4 94.54M
. c0 {$ H$ H- i6 @" g' V├──2-11_10-4viper+zap改造account服务端.mp4 80.73M! e0 j/ T% Y! \5 X: N
├──2-12_10-5如何让GRPC服务轻松在注册中心里成功注册.mp4 68.93M
. C, ^% P# t2 _6 L: o: _9 F) U3 C, [├──2-13_10-6如何通过注册中心成功调用到服务端.mp4 77.58M- m# G4 w* f. t
├──2-14_10-7如何优雅的启动HTTP服务.mp4 141.04M
& h* T: {' X. H├──2-15_11-1配置中心哪家强,我要如何选.mp4 114.71M$ |/ `/ g+ H- E0 m: E; q
├──2-16_11-2配置中心如何安装.mp4 73.67M
: }# v% s) k! B3 n. X$ r0 J├──2-17_11-3如何通过配置中心做到开发和生产环境的隔离.mp4 154.18M
) O7 k" G* P' ?1 f- u$ k├──2-18_11-4Gin+配置中心在一起.mp4 216.81M# g3 K& _' S% N( U# \
├──2-19_12-1如何启动多个服务副本.mp4 66.21M s" W. \* z' D1 n
├──2-1_9-5Go语言如何生成JWT.mp4 211.71M
# ~+ t" c7 J l$ ?5 _/ l$ a" v├──2-20_12-2如何理解负载均衡.mp4 121.68M! X/ n& C; R& O/ Z7 U, t
├──2-21_12-3负载均衡的算法都有哪些.mp4 83.33M& R: Y$ N2 j7 _& {! H; C0 @; E# D
├──2-22_12-4如何让你的服务实现负载均衡.mp4 186.10M
2 A6 \" u/ `' h4 @) v" I9 P5 t├──2-23_12-5账号服务实现负载均衡调用.mp4 69.22M
& [9 o( n8 {& ^$ q" Y8 ^├──2-24_13-1分析产品数据库解构梳理.mp4 23.52M
: e2 w% C# F4 O! j├──2-25_13-2产品数据库建表.mp4 132.63M
1 o% z- F+ Y6 n0 W├──2-26_13-3产品相关业务功能梳理.mp4 98.70M
, r2 e( S2 x6 F' q, s├──2-27_13-4产品分类相关业务功能梳理.mp4 54.42M7 `4 J, `9 A* x8 I% U1 X/ x* T: I
├──2-28_13-5品牌相关业务功能梳理.mp4 27.89M. E) ]- A& {6 i
├──2-29_13-6广告相关业务功能梳理.mp4 34.01M
3 k2 ]+ G* R T) x├──2-2_9-6如何解析JWT.mp4 66.40M7 m2 v1 ?( a0 W# y) H! r: e
├──2-30_13-7品牌分类相关业务功能梳理.mp4 43.48M
U3 c+ @* f. B* y├──2-31_13-8如何快速启动产品服务.mp4 109.47M3 q& q) ~1 m4 k& f" C9 E8 [
├──2-32_13-9-1品牌相关业务功能实现.mp4 206.04M
1 g/ A# i& n& n8 |├──2-33_13-9-2brand删除和更新.mp4 35.58M
3 u, O' K' D% \" e& ^5 h9 \├──2-34_13-9-3brand模块单元测试.mp4 78.50M8 f- n! i) M) Q9 Z8 |% v
├──2-35_13-10-1广告相关业务功能实现.mp4 61.89M5 I: z @6 x& Y) X/ [
├──2-36_13-10-2广告相关业务功能实现.mp4 49.75M- a! P. b& Z* T# L# P
├──2-37_13-10-3广告相关业务功能实现.mp4 48.94M. O% \0 u1 }9 Q) W8 w% {
├──2-38_13-11-1分类模块添加删除修改.mp4 91.21M
/ T8 g* Q8 q w9 H7 o# e├──2-39_13-11-2分类模块获取所有分类和子分类.mp4 75.76M a: ]4 \- ~$ D- k: H, ?! ?" K& L
├──2-3_9-7gin+jwt在一起.mp4 146.30M
' J' V6 h2 q& u, F* C( T' s+ L) P7 B├──2-40_13-11-3分类模块单元测试.mp4 59.72M( j& q1 [8 Z& |* a
├──2-41_13-12-1品牌分类新建修改删除.mp4 70.83M
- e! v+ k, }7 G├──2-42_13-12-2品牌分类查询.mp4 131.35M9 G3 P4 e" _- q& M
├──2-43_13-12-3品牌分类单元测试.mp4 58.29M4 D6 T3 d. P) M' K* Z
├──2-44_13-13-1基础函数构建(1).mp4 105.64M! _: S" q/ D0 R. X/ m; }7 g3 P& P6 n
├──2-44_13-13-1基础函数构建.mp4 105.64M, d0 D6 I/ w6 ~% M5 o) {/ Y, F+ B
├──2-44_13-13-1基础函数构建.mp4.aria2 0.05kb
0 W# l% h/ p& S" z├──2-45_13-13-2产品模块新建删除修改.mp4 70.59M: g) |4 \. f) p2 y3 b
├──2-46_13-13-3产品模块列表和详情.mp4 115.01M
( ?1 Z# h, ]' K/ L5 U, v" X: }├──2-47_13-13-4产品模块单元测试.mp4 64.06M
0 ~! |; v3 r$ J7 z1 Y/ N9 F& \├──2-48_14-15分钟快速搭建web服务.mp4 49.95M3 [0 [ V1 N# l
├──2-49_14-2如何获取产品列表.mp4 122.92M
# w8 P% ]. b/ W- m5 U3 @- a5 i├──2-4_9-8Go语言如何生成验证码.mp4 163.99M; [4 d' e6 I& E: R4 U P! r
├──2-50_14-3如何新建产品.mp4 77.91M& Q4 z; \" K7 E- c$ B# w8 E
├──2-51_14-4如何获取商品详情.mp4 37.91M3 t7 F/ }. F8 a6 c
├──2-52_14-5如何删除产品.mp4 44.25M
- F2 r- B$ g, e4 W├──2-53_14-6如何更新产品.mp4 29.98M2 l; f, X# ]0 _) ]0 a
├──2-54_14-7如何用Go语言设计多注册中心的方案.mp4 103.11M
; N' P) H$ s; b6 f, ?, ~- s: P├──2-55_14-8如何实现注册中心优雅退出的方案.mp4 22.34M
% V. z) C6 k" y0 }) `├──2-56_14-9注册中心测试+产品模块测试.mp4 64.28M; i( z$ J6 x' ~( _; H
├──2-57_15-1库存有多重要.mp4 34.58M* d' V/ ?7 p: a; ~% ]+ d
├──2-58_15-2库存设计.mp4 36.09M
# S5 j2 F: J, u├──2-59_15-3库存GRPC服务设计.mp4 62.47M
8 n5 W3 Q5 b! R6 W# o├──2-5_9-9如何使用gin+redis保存图片验证码.mp4 229.29M
7 S% T X: h1 g5 u0 O* R* Q├──2-60_15-4如何快速让库存服务跑起来.mp4 123.26M
; G1 j" F- a, O├──2-61_15-5如何设置库存,如何获取库存.mp4 98.65M
% C# a4 W1 e0 _2 D├──2-62_15-8如何保证库存归还的数据一致.mp4 33.80M! b, K; ^* n; \
├──2-63_15-6单元测试-设置库存+获取库存详情.mp4 78.40M* C: E4 O8 t$ r/ \! h* x7 a" e+ R; X
├──2-64_15-7如何迭代扣减库存保证数据一致.mp4 150.59M3 H2 i# T- w7 A" a5 p
├──2-65_15-8如何保证库存归还的数据一致.mp4 33.80M
) \$ @- f0 w6 _3 f8 F4 {2 O├──2-66_15-9单元测试-并发扣减库存+库存归还.mp4 88.71M$ [# N6 z% N4 m8 U* ^
├──2-67_15-10如何防止双11,618大促下的超卖.mp4 53.70M7 N1 T6 W0 s& b9 m
├──2-68_15-11如何理解分布式锁.mp4 27.71M$ W/ Y3 j- N2 ?
├──2-69_15-12常见的锁与分布式锁都有什么.mp4 43.40M% G6 D! S: f+ e( _8 K" _
├──2-6_9-10跨域真的那么难么.mp4 115.93M
& R3 x E1 V3 F6 G├──2-70_15-13数据库MySQl是如何实现悲观锁的.mp4 112.26M* v: M$ J( `- N% n- B4 s/ v
├──2-71_15-14如何使用Gorm实现Mysql的悲观锁.mp4 41.45M. z) K, T; u" [4 H6 C0 C# A
├──2-72_15-15数据库MySql如何实现乐观锁.mp4 41.16M& x* r: N0 e4 g, q8 Z- T" C+ q
├──2-73_15-16如何使用Gorm实现Mysql的乐观锁.mp4 67.91M
1 d0 m% L/ S! E" Y├──2-74_16-1购物车-买买买.mp4 13.16M/ v$ l- o, J" i2 Z- c6 r
├──2-75_16-2购物车与订单服务的数据库设计.mp4 127.80M: J2 n( ] F& K
├──2-76_16-3购物车服务接口设计.mp4 49.97M
, a( q# @( T3 Y& D. S* q3 n5 Y8 P├──2-77_16-4快速启动Srv服务.mp4 64.80M) V) E: G7 a. Z' @" l
├──2-78_16-5如何添加产品到购物车和获取登录用户的购物车内全部商品.mp4 111.41M
/ `. F7 J, L( |% t5 d: t' ]├──2-79_16-6如何更新和删除购物车中的商品.mp4 57.36M3 x! ?: ^2 T% e
├──2-7_10-1如何安装服务注册和服务发现的基础组件.mp4 83.48M
2 s9 q, J* X/ m8 i% ^8 T├──2-80_16-7购物车模块单元测试.mp4 78.61M
* `5 }/ P+ L" S' m$ A├──2-81_16-8如何快速启动购物车的Web服务.mp4 111.84M' `+ f" R; z2 {* C5 F
├──2-82_16-9Web服务获取购车内产品列表.mp4 16.09M
) l8 T9 P0 h& ]5 Z# c! @├──2-83_16-10购物车Web服务的添加修改删除功能.mp4 44.57M
. S3 [# t: f6 ~2 {( i3 P8 @├──2-84_17-1订单模块功能梳理.mp4 23.91M9 u4 C# {4 ^4 E3 E2 e& r9 F/ N
├──2-85_17-2订单模块数据库设计.mp4 63.06M
+ Z$ n! J. ?" v8 N) i+ c" z9 p├──2-86_17-3订单服务接口设计.mp4 69.99M
( n/ M1 P m+ O# i├──2-87_17-4如何分页查询订单列表.mp4 103.86M
; L: }0 F! {+ k$ Q) ? {1 g* q├──2-88_17-5如何展示订单详情,如何更改订单状态.mp4 157.96M1 U+ H* y/ t/ h- i
├──2-89_17-6前方高能-下单业务全流程讲解001.mp4 73.89M$ s3 N6 d2 H# |
├──2-8_10-2如何注册和注销你的服务.mp4 71.29M
' J2 [" j$ i- A3 `, j├──2-90_17-6前方高能-下单业务全流程讲解002.mp4 57.98M
7 @& W2 _4 g) H+ |3 W/ s$ h├──2-91_17-6前方高能-下单业务全流程讲解003.mp4 129.21M; B1 C" \% X! W; y( x4 t* k. H6 L9 w
├──2-92_17-7订单模块单元测试.mp4 89.04M
: ?, ^0 R+ C% i9 `' X4 ~├──2-93_18-1-为什么微服务需要链路追踪.mp4 35.58M$ e9 T5 P7 r# j- p, i
├──2-94_18-2如何选择合适的链路追踪框架.mp4 16.30M5 o& b( A& L! D- s9 x# p
├──2-95_18-3链路追踪工具架构设计长什么样.mp4 71.92M
7 `$ j ^. c3 i% x├──2-96_18-4链路追踪协议标准-opentracing.mp4 93.18M
1 E o: b0 s' C, {% w" E; k% l9 X. o├──2-97_18-5链路追踪工具的安装.mp4 48.82M! f, v6 c7 \3 |1 K) I
├──2-98_18-6如何使用Go语言完成第一次链路追踪.mp4 148.12M
$ `& e2 l' Z3 J+ k' v├──2-99_18-7如何使用Go语言发送多个嵌套的链路追踪.mp4 79.17M2 k2 g& _( d. S' F% y6 I
├──2-9_10-3如何让HTTP服务轻松在注册中心里成功注册-1.mp4 163.39M
: [" t$ u4 n p0 V* A% p, T) D├──3-100_28-11img标签.mp4 19.65M& r* a a% y5 I6 o; R
├──3-10_19-8如何利用消息队列解决订单超时的问题.mp4 59.29M; T1 O2 W! U+ X) ~2 [5 P
├──3-11_20-1限流、熔断、降级是什么鬼?.mp4 61.49M
6 N! ~* U$ d* ?├──3-12_20-2限流技术哪家强?.mp4 29.14M: y8 j4 x' J$ S5 A- E1 k# }; R5 f
├──3-13_20-3流量高,如何通过qps限流.mp4 130.23M+ Y. P8 I/ D2 R; P
├──3-14_20-4如何限流突发流量?.mp4 122.68M n$ U$ g% h- E
├──3-16_20-6如何做熔断?.mp4 69.76M9 O' p) X: Z8 A" a& r
├──3-17_20-7熔断方式有哪几种?.mp4 61.46M
0 ?- A8 p$ Z8 o1 P* Z' t├──3-18_21-1为什么库存和订单数据不一致.mp4 38.94M
" z' q! Q; r/ o7 Y0 Q# M; F; w├──3-19_21-2Mysql事务与分布式事务.mp4 45.71M
5 k& B8 U. h$ z+ }) Z# o$ T! J├──3-1_18-9链路追踪+Gin在一起.mp4 133.81M" p' U; d* r% w6 y/ z/ ]6 P
├──3-20_21-3分布式系统中哪些方面会造成数据不一致.mp4 29.88M
* S' p# h ^8 u R* y5 a1 R├──3-21_21-4如何理解分布式中的CAP理论.mp4 41.53M
! ]6 ?* R4 ?6 P. h& i├──3-22_21-5如何理解分布式中的BASE理论.mp4 78.74M0 D$ u" v# W. B8 ~1 @+ `
├──3-23_21-6分布式事务常用解决方案都有哪些.mp4 56.09M
1 F7 H' y) W: o$ F5 Z) K0 H3 L├──3-24_21-7如何理解分布式事务TCC.mp4 42.72M4 s1 u% ]6 }7 P5 Z
├──3-25_21-8为什么TCC那么难.mp4 57.89M
6 V7 X- |) @. R9 A( Z8 p├──3-26_21-9如何通过本地消息实现最终一致性.mp4 32.28M) }4 w a1 o$ A: b& W1 _2 Y
├──3-27_21-10如何通过可靠消息实现最终一致性.mp4 40.49M
6 e4 Y. B* n# C% P, w2 v( E$ t1 c├──3-28_21-11什么是最大努力通知方案.mp4 44.23M
/ J1 a. Y7 j* F0 }├──3-29_22-1如何通过可靠消息实现最终一致性1.mp4 32.55M z2 `/ M# B/ [; Y
├──3-2_18-10集成测试.mp4 52.86M
, q' ^ t7 w: s! U├──3-30_22-2如何通过可靠消息实现最终一致性2.mp4 71.63M
! v% N. g1 \5 O' ~├──3-31_22-3如何发送带有事务的消息.mp4 82.51M2 t, u- n8 c6 g
├──3-32_22-4如何改造新建订单发送事务消息.mp4 88.36M
9 s' K- k' v5 ?* d J8 e6 k0 X├──3-33_22-5如何执行新建订单的本地事务.mp4 137.95M
0 u9 j% p3 Q) E├──3-34_22-6如何回查新建订单的本地事务.mp4 47.08M
+ _! Q6 }5 s, O4 K0 s$ y0 r├──3-35_22-7如何扣减分布式中的库存.mp4 92.68M' N8 b8 ^* J& Z$ c
├──3-36_22-8打通最后一公里:如何正确扣减和归还库存逻辑.mp4 85.73M* A7 |" o! r! j3 t! p9 M
├──3-37_22-9分布式事务-如何处理订单超时的订单归还问题.mp4 153.21M7 j3 |9 A' K7 a4 H9 J
├──3-38_23-1如何使用redis实现分布式锁.mp4 130.28M0 k% |3 b5 e) R" ]/ d# ]
├──3-39_23-2如何使用分布式锁来控制库存扣减.mp4 157.23M8 R1 H+ I% W, @7 V1 E4 o
├──3-3_19-1为什么要使用消息队列.mp4 60.34M
& J9 d0 d) U- c. \+ w* q├──3-40_23-3分布式锁如何保证数据原子操作的一致性?.mp4 39.50M
% @. x. B1 J! @. H( |├──3-41_23-4分布式锁如何防止死锁?如何让锁续命?.mp4 31.53M0 X0 G+ J6 T$ H0 }6 ^3 J% Z' K
├──3-42_23-5分布式锁如何防止被人篡改或删除?.mp4 36.40M: L [' b, G$ T6 W; d: Z
├──3-43_23-6-分布式锁在集群中,容易出现的问题是什么.mp4 17.64M1 N8 n6 {0 r( i( w
├──3-44_23-7如何解决分布式锁在集群中出现的问题?.mp4 94.40M
% @' o4 U9 {* x% q├──3-45_23-8订单+消息队列单元测试.mp4 31.02M; D% M. j: |8 o( a+ R% u. w
├──3-46_24-1Docker是如何改变软件交付模式的.mp4 24.40M
% X" y* t7 x% h: n├──3-47_24-2Dockerfile常用命令详解.mp4 20.53M
5 }' ~& n0 ^- A( I3 w; A! L├──3-48_24-3如何制作自己的Docker镜像1.mp4 32.34M
4 ?5 B+ U/ @' y) n- Y* Y├──3-49_24-4如何制作自己的Docker镜像2.mp4 63.80M
6 E/ |7 w. f6 J- |├──3-4_19-2如何为Go语言选择合适的消息队列.mp4 41.07M
! `1 _1 `" D, f( P/ i) d├──3-50_24-5如何让Docker镜像减肥.mp4 48.97M
7 L9 q3 D0 T* \ h3 U \├──3-51_24-6如何管理你的镜像.mp4 28.96M
# ?5 Y7 P: x# b- b├──3-52_25-1k8s是什么.mp4 12.79M
2 l! E+ G5 B) g/ W7 b├──3-53_25-2K8S核心功能.mp4 15.54M
5 L0 f @0 L ]8 s7 X├──3-54_25-3K8S是如何调度的?.mp4 3.77M3 G- m8 }. J" Q; n0 ^ T
├──3-55_25-4K8S如何做健康检查.mp4 5.47M
/ @- Q0 G% C; y; w1 P├──3-56_25-5K8S如何扩缩容.mp4 7.56M
: G7 ^0 |$ b% a5 b [├──3-57_25-6K8S架构-Master篇.mp4 10.95M
: l' q1 [& Y1 h- O/ g├──3-58_25-7K8S架构-Node篇.mp4 9.16M
; q$ u9 a+ q% v$ k/ U├──3-59_25-8K8S运行流程图.mp4 9.22M- p. L" _5 j4 h/ y7 f
├──3-5_19-3如何安装和配置消息队列.mp4 80.63M7 i% f" w* \# C0 e7 @6 R' Y
├──3-60_25-9如何理解K8S中的POD.mp4 5.07M9 q( Z$ W7 h6 u& Q+ M' R% u' t
├──3-61_25-10什么是K8S中的卷.mp4 3.92M5 l) Y6 f6 u# L/ L( P& e
├──3-62_25-11如何理解K8S中的Deployment.mp4 6.08M( e" E( ~* m5 m, I
├──3-63_25-12如何理解K8S中的Service.mp4 8.11M7 ?1 f$ f6 S: ?5 V
├──3-64_25-13如何理解K8S中的命名空间.mp4 4.90M- _6 ^! z* \! X; W, g* @' C) b
├──3-65_25-14制作和运行product镜像.mp4 29.03M
/ q) _/ ^- _: i6 B% t4 r' m. {6 L- x├──3-66_25-15编写Deployment.mp4 74.71M" m, E9 I8 C( l8 H1 i1 o
├──3-67_25-16编写Service.mp4 27.94M
& ~0 Q1 T& S1 P├──3-68_25-17编写Ingress.mp4 43.96M
" ?2 i5 }& b }├──3-69_25-18应用上云.mp4 111.12M
/ I: N' w* ?: [8 F6 f h├──3-6_19-4消息队列的基本概念.mp4 131.82M6 B0 z$ u( A" ?9 \ }
├──3-70_26-1为什么需要网关.mp4 21.11M! f8 g# S) E% X8 v+ i
├──3-71_26-2网关都能做什么.mp4 19.31M
( I+ h# L+ `; {/ \: p" L* L# V* |2 i5 q├──3-72_26-3网关内部数据是如何流转的.mp4 11.00M
' B+ E' S3 S/ k6 _" s2 N) ~# u3 K├──3-73_26-4如何搭建网关.mp4 66.72M
/ B$ n% n4 I* y( p/ N/ A├──3-74_26-5网关是如何进行url转发的.mp4 16.93M6 U( n5 s; F* @( l/ K7 X; H5 N
├──3-75_26-6网关是如何请求到我们的服务.mp4 4.64M9 F7 O2 \6 z* I0 ?* @. g" q
├──3-76_26-7网关如何集成consul.mp4 23.43M
$ W3 Z+ m5 C. |) R- ?$ A1 @├──3-77_27-1如何安装elasticsearch.mp4 49.03M8 x I) Y7 e7 F7 e" B8 ^2 C
├──3-78_27-2如何学习elasticsearch.mp4 8.16M$ ~5 `1 i8 r2 Z9 B/ M
├──3-79_27-3如何向elasticsearch中添加数据.mp4 13.18M
) e: w: |1 T/ @; k* D├──3-7_19-5消息类型都有哪些.mp4 40.52M* h! ~ ^3 L2 V- ^3 T; B
├──3-80_27-4如何获取elasticsearch数据.mp4 12.92M
" d4 l* X7 N4 M* W' I; E; ^├──3-81_27-5如何更新和删除elasticsearch数据.mp4 16.33M
1 ?0 p0 |. [, \5 D├──3-82_27-6Go语言如何操作elasticsearch.mp4 66.59M
) m# k7 k# @4 K1 Y2 X├──3-83_27-7elasticsearch如何与Go语言结构体转换.mp4 31.17M
3 w; z( J! {- @$ j; E├──3-84_27-8elasticsearch+Product在一起.mp4 29.94M
* I+ S, {7 i5 v7 o. d5 t) [$ R├──3-85_27-9Gin整合elasticsearch.mp4 13.95M
* z/ Z/ o" c( U) k; ^1 @% E├──3-86_27-10如何同步mysql的数据到elasticsearch中.mp4 77.26M1 U5 t% b* F# z) [6 Y \/ M, q4 q
├──3-87_27-11如何保证elasticsearch中的事务一致性.mp4 29.25M Z0 a7 ]) |: U% ~% y
├──3-88_27-12如何处理中文搜索.mp4 35.76M
_) f2 |2 R& M0 I5 Z├──3-89_27-13中文分词-单元测试.mp4 29.82M+ Z8 \- V! {5 D
├──3-8_19-6如何用Go语言发送消息到消息队列中.mp4 128.50M
; v C4 G' X9 Q4 F. w/ l├──3-90_28-1html介绍.mp4 29.90M
- ^$ _* ~. ]6 h& k5 K! J├──3-91_28-2如何快速生成html文档.mp4 3.64M
8 I- R: \/ }3 U├──3-92_28-3head+body介绍.mp4 25.83M
* f' f: l( T5 c, w! |1 T" h5 a# L├──3-93_28-4标签的使用.mp4 32.95M3 ^( x4 f8 G z t# n5 j# a' d& [
├──3-94_28-5块元素与行内元素区别.mp4 11.11M
. p8 c2 X/ }3 _4 I6 S. A├──3-95_28-6标题标签.mp4 7.98M
2 V6 f% h& V' B├──3-96_28-7段落标签.mp4 12.63M. n8 t9 }0 \; U2 i9 t
├──3-97_28-8容器标签.mp4 10.98M9 z8 R1 `: a1 q; Z. D/ Y
├──3-98_28-9a标签.mp4 29.62M n% a" r/ k/ `. ]3 h6 _
├──3-99_28-10内联容器标签.mp4 9.56M2 H5 o& E+ r$ s9 ^* K) B
├──3-9_19-7如何用Go语言读取消息队列中的消息.mp4 143.03M
6 l+ k+ W4 Z X3 M├──4-10_28-21内边距和外边距.mp4 38.10M
& R! D! [- v' o( r$ V3 _├──4-11_28-22float.mp4 15.20M
" R \, e' A3 p" C: ^, k├──4-12_28-23css与常见布局样式.mp4 7.95M- l# b' T% f$ l; Z/ r: b6 n5 n+ S* n
├──4-13_28-24列表ul和ol.mp4 11.99M
" l' W: F0 F& x x5 q7 z# x+ R├──4-14_28-25表单.mp4 53.87M6 v0 z( s: K- t9 a' W% K
├──4-15_28-26表格.mp4 12.87M+ c! r& W& G/ q# t( r% d9 ^- G I) v
├──4-16_28-27绝对地址和相对地址.mp4 11.42M
7 q/ l0 i7 @, F├──4-17_28-28css选择器.mp4 42.44M4 r8 [9 \& e& O S( _0 `, W! O
├──4-18_28-29内容溢出和显示方式.mp4 15.71M
$ a% R5 o8 @7 ~$ \├──4-19_28-30定位.mp4 16.19M( }9 |( O' g% @+ P' P( Z3 \
├──4-1_28-12br标签.mp4 8.38M
7 ~# E1 V, U6 G# Z) j0 d$ o4 K/ M├──4-20_28-31css优先级.mp4 8.26M
7 i. c( u1 r( ]├──4-21_28-32js基础001.mp4 26.63M% n0 W- q" d# T! U$ A" D
├──4-22_28-33js基本语法及规范.mp4 16.34M
" L3 ^% D8 C; y Z9 m; [├──4-23_28-34函数定义传参返回值.mp4 17.98M
8 r* Z$ D7 w: p$ z├──4-24_28-35变量与函数解析.mp4 15.77M
6 q- ^6 I; M! ^2 f e├──4-25_28-36定时器.mp4 16.73M3 }# F9 ^$ v* U- ]; A! Y
├──4-26_28-37变量作用域.mp4 23.85M
+ E- x0 ?( |) `, z1 y8 ~$ Q( T├──4-27_28-38ES6变量声明和赋值.mp4 13.41M
3 ~3 P6 V( `$ t/ F├──4-28_28-39ES6解构赋值.mp4 13.87M& N; \3 V! `( v4 W
├──4-29_28-40扩展运算符.mp4 18.94M2 V% ?. ]* l/ r5 s6 ^
├──4-2_28-13html注释.mp4 10.14M
: _1 P3 F8 S3 }% W+ Y# @├──4-30_28-41箭头函数.mp4 36.60M
/ X! y" W* r# r' ]! d├──4-31_28-42es6导出.mp4 11.91M
$ ], L! `6 |" @7 E├──4-32_28-43类与类的继承.mp4 36.61M
+ g) x0 W# |# E" ~8 \% i/ W├──4-33_28-44异步与Promise.mp4 25.50M' X/ d" }# W) b. @
├──4-34_28-45vue安装.mp4 24.10M
% K- x8 u7 j1 O' u# P) i3 ~├──4-35_28-46第一个vue应用.mp4 20.83M! ^9 P( [0 G( e) d4 |- z
├──4-36_28-47vue条件判断.mp4 33.31M Z. J, ?' N+ q& N
├──4-37_28-48vue循环语句.mp4 23.01M& I. X( |; w! i- f" y7 O- @$ p
├──4-38_28-49vue方法和事件.mp4 17.31M+ x. h3 m1 z$ f
├──4-39_28-50表单数据绑定.mp4 29.80M6 o- b; N# ]. k& p
├──4-3_28-14空格.mp4 15.34M$ K) z0 i' Z% l1 l5 ~8 U& i! g
├──4-40_28-51vue声明周期.mp4 23.07M
0 F2 I3 y3 ~' d) X( F, M- R3 _2 ?" l├──4-41_28-52vue路由.mp4 17.87M
D+ ?& b+ N. V$ h├──4-42_28-53axios发送数据给后端.mp4 33.45M1 X, q8 x' o3 X ]
├──4-43_28-54vuex.mp4 50.49M
! v6 S2 c2 X2 R" d├──4-44_28-55vue代码全流程讲解.mp4 64.57M
4 ^3 R5 n1 g3 y: K├──4-45_28-56前端商城讲解.mp4 100.70M0 D3 D& {' b& `' l' }, Q
├──4-4_28-15和.mp4 10.90M
/ P3 ^4 r) n% @% _, Q+ v |8 e├──4-5_28-16CSS介绍.mp4 17.32M( \- w5 C4 M& ` I! D
├──4-6_28-17CSS三种种使用方式.mp4 16.14M* n& \/ ]; @) t
├──4-7_28-18类选择器.mp4 26.49M
4 y3 c' C, M' n├──4-8_28-19层级选择器.mp4 39.11M
, ?1 ?) A0 O4 E; E; l6 [" Q└──4-9_28-20盒子模型.mp4 9.85M/ t. ]2 I7 H8 U }2 E A
& p4 {8 r- O" R3 v+ x# C3 Z; s2 M9 q
! c8 Z: G1 H' e. ?0 X5 \( R5 E9 K) w* d i; `+ \
. ~) y3 @! v# S9 {* y$ G5 ~
& u7 A* P8 V. m+ `) e
永久至尊VIP回复即可下载学习,非至尊VIP暂不支持下载此资源! 赞助VIP/ Z+ C" \5 k6 ~# d) S
9 e8 h* x% n$ F; f: Z) q3 e3 J6 i, d) k( d
|