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