实战场景定位:棋牌游戏后端架构与并发逻辑

这篇课程聚焦于使用 Go 语言构建高并发的棋牌类游戏后端服务。它并非通用开发入门,而是针对“房间管理、实时通信、规则判定”这一特定场景的深度演练。对于已经掌握 Go 基础语法的开发者,这门课能填补“如何将业务逻辑转化为分布式系统”的缺口。你需要具备对 WebSocket、gRPC 以及并发模型的理解,课程将重点演示如何处理多人同局、消息同步以及复杂的牌型算法。

学习路径与核心模块

建议优先关注项目构建与网关通信部分,先理解整体架构,再深入业务细节。重点关注以下模块:首先,通过搭建 Gate 服务(如 ws管理器.mp4)和消息解码(26-【棋牌】26-消息解码并处理握手和心跳.mp4)掌握客户端与后端的交互机制;其次,深入学习房间管理逻辑,包括座次生成(50-【棋牌】50-座次号生成.mp4)、用户加入与准备(47-【棋牌】47-房间用户准备.mp4、48-【棋牌】48-加入房间.mp4)以及自动过牌(91-【棋牌】91-自动过测试.mp4)等核心功能;最后,攻克规则判定难点,如三张比牌(58-【棋牌】58-三张比牌-1.mp4)、碰杠逻辑(77-【棋牌】77-碰逻辑处理.mp4)以及最终的结算处理(79-【棋牌】79-吃胡结算处理.mp4)。

学完后的产出与练习建议

学完本课程,你应能独立搭建一套基于 Go 的棋牌游戏服务,涵盖完整的房间生命周期,并能处理高并发下的状态同步。为了巩固所学,建议配合资料包中的测试文件进行实战演练。重点练习“出牌后触发操作逻辑”(76-【棋牌】76-出牌后触发操作逻辑.mp4)和“补杠/胡牌算法”(67-【棋牌】67-胡牌算法-字典表生成-1.mp4、88-【棋牌】88-补杠测试.mp4),并尝试复现“解散房间”等边缘场景的 Bug 处理流程(86-【棋牌】86-解散bug处理-重复加锁导致阻塞.mp4),从而将代码逻辑内化为系统架构能力。

课程目录

11-【棋牌】11-搭建Gate服务.mp4 [80.9 MB]
44-【棋牌】44-创建房间-场景推送-7.mp4 [197.6 MB]
55-【棋牌】55-三张看牌操作.mp4 [172.1 MB]
23-【棋牌】23-ws管理器.mp4 [85.2 MB]
67-【棋牌】67-胡牌算法-字典表生成-1.mp4 [134.8 MB]
79-【棋牌】79-吃胡结算处理.mp4 [117.4 MB]
64-【棋牌】64-红中MJ开始游戏.mp4 [236.2 MB]
01-【棋牌】01-棋牌游戏总体介绍.mp4 [59.6 MB]
47-【棋牌】47-房间用户准备.mp4 [69.9 MB]
88-【棋牌】88-补杠测试.mp4 [39.2 MB]
04-【棋牌】04-项目目录构建-学浪版.mp4 [21.7 MB]
86-【棋牌】86-解散bug处理-重复加锁导致阻塞.mp4 [24.2 MB]
14-【棋牌】14-测试grpc连接.mp4 [40.4 MB]
24-【棋牌】24-ws读写消息处理.mp4 [149.8 MB]
42-【棋牌】42-创建房间-进入游戏推送-5.mp4 [33.1 MB]
39-【棋牌】39-创建房间-推送处理-2.mp4 [109.0 MB]
07-【棋牌】07-启动grpc服务+优雅启停.mp4 [83.8 MB]
78-【棋牌】78-碰操作bug处理.mp4 [27.7 MB]
83-【棋牌】83-测试牌.mp4 [100.0 MB]
10-【棋牌】10-数据库管理.mp4 [138.9 MB]
12-【棋牌】12-grpc客户端构建.mp4 [113.2 MB]
76-【棋牌】76-出牌后触发操作逻辑.mp4 [92.5 MB]
37-【棋牌】37-game服务创建.mp4 [20.8 MB]
34-【棋牌】34-赢三张介绍.mp4 [22.5 MB]
85-【棋牌】85-解散房间.mp4 [141.9 MB]
13-【棋牌】13-etcd解析器实现.mp4 [269.6 MB]
58-【棋牌】58-三张比牌-1.mp4 [123.8 MB]
08-【棋牌】08-日志封装.mp4 [46.3 MB]
45-【棋牌】45-创建房间-测试-8.mp4 [27.7 MB]
48-【棋牌】48-加入房间.mp4 [118.3 MB]
50-【棋牌】50-座次号生成.mp4 [45.8 MB]
46-【棋牌】46-定时踢出房间.mp4 [145.5 MB]
95_【qp】95-nats部署+containerd配置harbor.mp4 [27.4 MB]
32-【棋牌】32-node节点搭建.mp4 [143.2 MB]
91-【棋牌】91-自动过测试.mp4 [54.5 MB]
56-【棋牌】56-三张下分操作.mp4 [156.3 MB]
77-【棋牌】77-碰逻辑处理.mp4 [65.8 MB]
02-【棋牌】02-演示.mp4 [19.5 MB]
21-【棋牌】21-connector初始化.mp4 [72.7 MB]
26-【棋牌】26-消息解码并处理握手和心跳.mp4 [196.5 MB]
27-【棋牌】27-测试握手消息.mp4 [30.2 MB]
03-【棋牌】03-项目搭建说明.mp4 [19.4 MB]
28-【棋牌】28-本地消息处理.mp4 [157.1 MB]
68-【棋牌】68-胡牌算法-字典表生成-2.mp4 [31.1 MB]
22-【棋牌】22-框架配置加载.mp4 [107.0 MB]
74-【棋牌】74-弃牌操作.mp4 [67.6 MB]
90-【棋牌】90-自动出牌测试.mp4 [46.3 MB]
51-【棋牌】51-触发开始游戏说明.mp4 [26.5 MB]
33-【棋牌】33-更新用户地理位置信息.mp4 [81.6 MB]
81-【棋牌】81-一些bug修正.mp4 [65.4 MB]
75-【棋牌】75-弃牌测试.mp4 [25.0 MB]
60-【棋牌】60-三张比牌-3.mp4 [56.4 MB]
63-【棋牌】63-红中麻将-加载游戏场景.mp4 [137.5 MB]
93-【棋牌】93-harbor安装.mp4 [110.7 MB]
72-【棋牌】72-胡牌客户端测试.mp4 [18.5 MB]
94-【棋牌】94-部署其他中间件.mp4 [57.7 MB]
36-【棋牌】36-创建房间说明.mp4 [37.7 MB]
05-【棋牌】05-加载配置.mp4 [70.2 MB]
59-【棋牌】59-三张比牌-2.mp4 [191.7 MB]
49-【棋牌】49-一些bug修复.mp4 [73.1 MB]
43-【棋牌】43-创建房间-session数据处理-6.mp4 [135.7 MB]
62-【棋牌】62-红中麻将基本玩法.mp4 [14.4 MB]
09-【棋牌】09-etcd注册中心.mp4 [181.7 MB]
16-【棋牌】16-实现注册功能-1.mp4 [120.4 MB]
41-【棋牌】41-创建房间-推送测试-4.mp4 [71.1 MB]
57-【棋牌】57-三张重新加入房间bug修复.mp4 [63.3 MB]
25-【棋牌】25-测试ws连接.mp4 [45.7 MB]
52-【棋牌】52-三张开始游戏实现-1.mp4 [54.8 MB]
17-【棋牌】17-实现注册功能-2.mp4 [134.6 MB]
70-【棋牌】70-胡牌算法实现.mp4 [117.9 MB]
84-【棋牌】84-自摸杠处理逻辑.mp4 [130.2 MB]
31-【棋牌】31-connector服务构建nats远程调用.mp4 [193.7 MB]
96_【qp】96-k8s应用部署.mp4 [209.4 MB]
30-【棋牌】30-测试功能并修改bug.mp4 [48.7 MB]
54-【棋牌】54-三张开始游戏-3.mp4 [15.4 MB]
65-【棋牌】65-红中MJ开始游戏发牌测试.mp4 [33.0 MB]
69-【棋牌】69-胡牌算法-字典表生成-3.mp4 [103.2 MB]
40-【棋牌】40-创建房间-ws处理nats消息-3.mp4 [83.0 MB]
92-【棋牌】92-k8s1_27安装.mp4 [262.1 MB]
87-【棋牌】87-补杠操作.mp4 [135.4 MB]
19-【棋牌】19-服务发现BUG解决.mp4 [54.9 MB]
53-【棋牌】53-三张开始游戏-2.mp4 [206.3 MB]
71-【棋牌】71-胡牌算法测试.mp4 [43.4 MB]
73-【棋牌】73-房间内聊天.mp4 [40.7 MB]
20-【棋牌】20-框架开发说明.mp4 [27.6 MB]
15-【棋牌】15-日志打印bug.mp4 [7.6 MB]
66-【棋牌】66-胡牌算法讲解.mp4 [105.8 MB]
06-【棋牌】06-启用可视化实时监控.mp4 [24.2 MB]
29-【棋牌】29-进入游戏接口实现.mp4 [164.1 MB]
18-【棋牌】18-测试注册功能.mp4 [54.0 MB]
89-【棋牌】89-到时出牌.mp4 [99.3 MB]
80-【棋牌】80-吃胡测试.mp4 [79.1 MB]
82-【棋牌】82-碰bug修复测试.mp4 [17.4 MB]
35-【棋牌】35-etcd注册续约补充.mp4 [6.6 MB]
61-【棋牌】61-三张弃牌.mp4 [67.6 MB]
38-【棋牌】38-创建房间-1.mp4 [112.2 MB]