课程定位与核心价值
这门课的核心目标,不是教你背诵 Go 语言的语法糖,而是通过构建一个完整的流媒体视频网站,让你掌握在后端开发中如何组织代码、设计架构以及处理真实业务场景。很多初学者在看完了基础教程后,面对一个从零开始的项目往往无从下手,或者代码结构混乱、难以维护。本课正是为了解决这一痛点而生:它将带你把分散的知识点串联起来,形成一套可落地的工程化思维。
课程首先通过一个具体的例子,带你熟悉 Go 语言的工具链,包括如何编写和运行测试用例,以及如何利用 benchmark 对代码性能进行量化评估。这部分内容虽然篇幅不长,但却是区分「写代码」与「开发软件」的关键分水岭。随后,课程进入核心的 API 模块实现阶段,从整体架构梳理到详细的接口设计,再到 Handler 层、数据库层的具体编码,最后以 Session 管理和中间件(Middleware)的编写收尾。这是一个标准的 Web 后端开发全流程,涵盖了路由分发、数据持久化、用户认证和安全拦截等关键环节。
适合人群与前置要求
本课程适合已经掌握 Go 语言基础语法,如变量、函数、结构体、接口、并发基础等,但缺乏实际项目经验或想提升架构设计能力的开发者。如果你是完全的零基础新手,直接上手可能会在架构设计和调试环节感到吃力,建议先补齐基础语法知识。
同时,课程内容涉及数据库操作(如 MySQL)、HTTP 协议原理以及 Web 安全相关的基础概念,因此如果你对这些领域完全没有了解,也需要在学习过程中同步补课。它不适合那些只想快速实现一个 Hello World 或者仅关注单一语法点的学习者,因为它的视角是系统级的。
学习路径与资料使用建议
建议的学习路径如下:首先务必认真观看前两章的课程介绍和工具链部分,特别是关于 Test 和 Benchmark 的写法,这是后续验证代码正确性和性能的基础,不要跳过。进入第三章后,不要急于动手写代码,先跟随老师梳理一遍流媒体网站的架构图和 API 设计思路,理解各模块之间的调用关系。
在编码阶段,建议按照「详细设计 → Handler 层 → 数据库层 → 中间件与收尾」的顺序进行。对于数据库层的 User、Video、Comments 等模块,务必亲手实现其对应的 Test Case,这是培养单元测试习惯的最好时机。学完后,你应该能够独立完成一个具备用户认证、视频 CRUD、评论功能且结构清晰的 Go Web 后端服务,并懂得如何对其进行测试和优化。
课程目录
第1章 课程介绍 试看 2 节 | 18分钟 1-1 prestudy (07:52).mp4 1-2 课程介绍及知识要点预习 (09:07).mp4 第2章 一个例子了解golang工具链 4 节 | 33分钟 2-1 一个例子了解golang常用工具链 (10:09).mp4 2-2 golang项目中test的写法 (13:29).mp4 2-3 golang项目中benchmark的写法 (07:54).mp4 2-4 章节总结 (00:35).mp4 第3章 流媒体网站架构以及API模块的实现 18 节 | 203分钟 3-1 流媒体网站整体介绍与架构梳理 (08:30).mp4 3-2 api设计与架构 (12:00).mp4 3-3 api实现之详细设计(上) (08:24).mp4 3-4 api实现之详细设计(中) (07:04).mp4 3-5 api实现之详细设计(下) (08:27).mp4 3-6 api之http handler层 (14:31).mp4 3-7 api之数据库层设计 (13:01).mp4 3-8 api之数据库层实现_数据库连接 (10:51).mp4 3-9 api之数据库层实现_实现User (07:54).mp4 3- 10 api之数据库层实现_编写User Test Case (13:08).mp4 3- 11 api之数据库层实现_User部分代码优化 (04:54).mp4 3- 12 api之数据库层实现_实现和验证Video (14:18).mp4 3- 13 api之数据库层实现_实现Comments (13:23).mp4 3- 14 api之数据库层实现_Comments Test Case (07:10).mp4 3- 15 api之session处理与实现(上) (17:24).mp4 3- 16 api之session处理与实现(下) (15:52).mp4 3- 17 api之http middleware的实现与handler收尾(上) (12:38).mp4 3- 18 api之http middleware的实现与handler收尾(下) (12:41).mp4 第4章 stream模块 9 节 | 51分钟 4-1 stream server (02:26).mp4 4-2 streaming的架构搭建 (07:35).mp4 4-3 token bucket (04:12).mp4 4-4 流控模块的实现 (05:03).mp4 4-5 在http middleware中嵌入流控 (05:24).mp4 4-6 streamHandler实现 (06:40).mp4 4-7 验证streamHandler (03:05).mp4 4-8 uploadHandler实现 (12:13).mp4 4-9 验证uploadHandler (03:21).mp4 第5章 scheduler模块 7 节 | 82分钟 5-1 scheduler介绍 (03:24).mp4 5-2 代码架构搭建 (04:11).mp4 5-3 runner的生产消费者模型实现 (18:31).mp4 5-4 runner的使用与测试 (08:08).mp4 5-5 task示例的实现 (24:20).mp4 5-6 timer的实现 (09:35).mp4 5-7 api实现以及scheduler完成 (13:35).mp4 第6章 前端服务和模版引擎渲染 11 节 | 134分钟 6-1 大前端和golang模版引擎介绍 (04:26).mp4 6-2 前端代码架构搭建 (08:46).mp4 6-3 静态页面渲染 (12:48).mp4 6-4 build脚本和homeHandler (12:55).mp4 6-5 userHomeHandler (10:03).mp4 6-6 api透传模块实现 (23:55).mp4 6-7 proxy转发的实现 (09:17).mp4 6-8 UI部分的预览 (03:25).mp4 6-9 API service补全与讲解 (17:58).mp4 6- 10 UI之html讲解 (04:18).mp4 6- 11 js部分实现 (25:06).mp4 第7章 网站上云 12 节 | 118分钟 7-1 云原生讲解 (12:17).mp4 7-2 云存储改造之OSS方案分析 (08:24).mp4 7-3 云存储改造之OSS适配 (12:04).mp4 7-4 公共配置实现 (14:02).mp4 7-5 用vendor处理公共配置包 (07:40).mp4 7-6 SLB讲解与配置 (07:17).mp4 7-7 SLB之添加session容错 (06:59).mp4 7-8 ECS云主机和安全组配置 (07:02).mp4 7-9 scheduler的改造 (12:26).mp4 7- 10 部署脚本以及db初始化 (17:12).mp4 7- 11 部署演示以及完成效果展示 (06:16).mp4 7- 12 课程总结(回顾,延伸和优化) (06:12).mp4






