这门课解决的是一个很具体的问题:你学过 Go 的基础语法,能写函数、能读懂 struct 和 interface,但真让你从零做一个能跑起来、有数据库、有缓存、有实时消息、还能对外部署的项目,往往就卡住了。市面上的 Go 项目课不少,但大多停在 CRUD 层面,或者把一堆中间件拼在一起却不解释为什么这么选。这门课的价值在于,它把「一个博客后端到底需要哪些技术、它们怎么配合」讲清楚了。

它解决的不是语法问题,是工程组装问题

课程的主线是从零到一独立完成一个博客系统的后端。核心场景包括文章管理、分类、收藏、私信、消息通知、个人主页和登录注册,并且可以在「传统博客模式」和「社区模式」之间切换。这个运行模式切换的设计比较务实——它逼着你把权限、数据可见性和接口逻辑分开处理,而不是写死一套流程。对转行者来说,这种「同一套数据、两种对外形态」的练习,比单纯堆功能更接近真实工作里的需求变更。

数据库部分同时用了 MySQL 和 Elasticsearch,并且讲了 MySQL 到 ES 的数据同步。这一步是很多自学的人会绕过去的:只写 MySQL 也能查,但文章搜索、全文检索、按相关度排序就会很吃力。课程把同步这件事放进项目里,你学到的不是「ES 怎么装」,而是「什么时候该引入 ES、数据怎么保持一致」。

AI 大模型部分:不是噱头,是接在博客数据上的

课程把 AI 大模型问答和博客文章做了关联,相当于给博客加了一个基于自己内容的知识库问答。这里值得关注的是它的接入方式:不是单独做一个聊天框,而是让 AI 能读取文章内容、结合提问给出回答。做过的人都知道,难点不在调 API,而在怎么把文章切分、怎么组织上下文、怎么控制返回。这部分对想往 AI 应用方向靠的后端开发者来说,是一个成本不高的切入口。

学完能独立做到什么程度

  • 能自己搭出一套带登录注册、文章发布、分类、收藏、私信和消息通知的后端服务;
  • 能说清楚 MySQL 和 ES 在项目里各自负责什么,并完成两者之间的数据同步;
  • 能用 WebSocket 实现实时消息类功能,而不是只会写 HTTP 接口;
  • 能把 AI 大模型问答接入到已有业务数据上,形成可用的问答能力;
  • 能完成一次相对简单的部署上线,而不是只在本机跑通。

需要提醒的是,这不等同于「学完就是高级后端」。它给你的是一个完整项目的骨架和几项关键技术的实操经验,深度还需要你在工作中继续补。

适合什么基础,不适合什么人

课程明确面向「学过 Go 基础」的学习者。如果你还没写过 Go 的并发、没理解过接口和错误处理,直接上这个项目会比较吃力。另外,课程虽然叫「全栈博客项目」,但主体是后端,前端更多是配合演示,想系统学前端的不要指望在这里补齐。

反过来,如果你已经会写 Go 的增删改查,但没做过一个功能完整、能部署、还带点 AI 能力的项目,这门课的资料包值得按顺序过一遍:先跑通基础博客,再补 ES 和消息,最后接 AI 部分。不要一上来就跳到 AI 章节,那样容易变成抄代码。

课程目录

课程目录309 集
  • 01 项目搭建 01 1.十代博客课程介绍.mp4
  • 02 2.如何学习本项目.mp4
  • 03 3.遇到错误怎么办.mp4
  • 04 4.项目搭建及配置文件读取.mp4
  • 05 5.项目搭建-读取不同的配置文件.mp4
  • 06 6.goland运行命令行参数.mp4
  • 07 7.logrus日志初始化.mp4
  • 08 8.数据库连接.mp4
  • 09 9.读写分离的配置.mp4
  • 10 10.根据ip获取地理位置.mp4
  • 11 11.根据ip获取地理位置优化.mp4
  • 02 表结构搭建 01 12.表结构搭建-用户表.mp4
  • 02 13.表结构搭建-用户表-数据库迁移.mp4
  • 03 14.表结构搭建-用户配置表.mp4
  • 04 15.表结构搭建-文章表.mp4
  • 05 16.表结构搭建-文章分类表和文章点赞表.mp4
  • 06 17.表结构-收藏表、用户文章收藏表.mp4
  • 07 18.表结构-置顶文章表、图片表.mp4
  • 08 19.表结构-文章历史表.mp4
  • 09 20.表结构-评论表.mp4
  • 10 21.表结构-banner表和日志表.mp4
  • 11 22.表结构-用户登录表.mp4
  • 12 23.表结构-全局通知表.mp4
  • 03 日志管理 01 24.日志-为什么要使用日志管理.mp4
  • 02 25.日志-登录日志-成功的登录日志.mp4
  • 03 26.日志-登录日志-登录失败的日志.mp4
  • 04 27.路由初始化.mp4
  • 05 28.日志-登录日志测试,apifox创建项目.mp4
  • 06 29.日志-操作日志-基本框架.mp4
  • 07 30.日志-操作日志-请求体的获取.mp4
  • 08 31.日志-操作日志-响应体获取.mp4
  • 09 32.日志-操作日志-日志流结合.mp4
  • 10 33.日志-操作日志-视图函数控制记录请求体和响应体.mp4
  • 11 34.日志-操作日志-SetItem方法.mp4
  • 12 35.日志-操作日志-setLink,setImage,请求头和响应头.mp4
  • 13 36.日志-操作日志-保存错误堆栈信息.mp4
  • 14 37.日志-操作日志-save问题优化.mp4
  • 15 38.日志-操作日志完结.mp4
  • 16 39.日志-运行日志-初始化.mp4
  • 17 40.日志-运行日志按小时,按天记录.mp4
  • 18 41.日志-运行日志完结.mp4
  • 19 42.响应封装01.mp4
  • 20 43.参数绑定失败的响应封装.mp4
  • 21 44.gin静态路由和模式配置.mp4
  • 22 45.日志管理-分页查询.mp4
  • 23 46.日志管理-日志列表接口.mp4
  • 24 47.通用列表查询封装01.mp4
  • 25 48.通用列表查询封装02.mp4
  • 26 49.日志读取接口.mp4
  • 27 50.日志删除接口.mp4
  • 04 jwt 01 51.jwt介绍.mp4
  • 02 52.jwt的使用.mp4
  • 03 53.双token扩展.mp4
  • 04 54.redis连接.mp4
  • 05 55.通过redis实现redis注销功能.mp4
  • 06 56.中间件认证用户权限.mp4
  • 07 57.中间件结合redis黑名单.mp4
  • 05 站点管理 01 58.站点配置-站点信息.mp4
  • 02 59.站点配置-其他四个站点配置.mp4
  • 03 60.站点配置信息接口.mp4
  • 04 61.站点信息-敏感字段打码返回.mp4
  • 05 62.站点信息-qq登录地址.mp4
  • 06 63.站点信息-网站版本返回.mp4
  • 07 64.网站配置更新.mp4
  • 08 65.goquery下载和基本使用.mp4
  • 09 66.动态更新前端文件.mp4
  • 10 67.crypto sha3依赖问题.mp4
  • 11 68.动态更新前端文件功能测试.mp4
  • 06 图片管理 01 69.图片管理-图片基本上传.mp4
  • 02 70.图片管理-文件大小判断和文件后缀判断.mp4
  • 03 71.图片管理-文件重复判断.mp4
  • 04 72.图片管理-文件名重复的处理.mp4
  • 05 73.图片管理-列表和删除.mp4
  • 06 74.七牛云介绍.mp4
  • 07 75.版本错误问题解决.mp4
  • 08 76.后端直传文件到七牛云.mp4
  • 09 77.客户端上传文件到七牛云.mp4
  • 10 78.图片管理-上传凭证接口.mp4
  • 11 79.图片管理-扩展大文件分片上传.mp4
  • 12 80.banner管理-增删查.mp4
  • 13 81.banner管理-修改和api测试.mp4
  • 07 用户管理 01 82.用户管理-图片验证码验证逻辑.mp4
  • 02 83.用户管理-生成图片验证码.mp4
  • 03 84.图片验证码接口.mp4
  • 04 85.go发送邮件.mp4
  • 05 86.发邮件代码封装.mp4
  • 06 87.用户管理-给邮箱发邮件接口.mp4
  • 07 88.用户管理-图形验证码验证中间件.mp4
  • 08 89.用户管理-通过邮箱注册用户.mp4
  • 09 90.用户管理-邮箱注册测试.mp4
  • 10 91.如何过qq登录的审核.mp4
  • 11 92.qq登陆-获取accessToken.mp4
  • 12 93.qq登陆-获取用户信息.mp4
  • 13 94.qq登陆封装.mp4
  • 14 95.qq登陆接口完成.mp4
  • 15 96.用户管理-用户密码登陆.mp4
  • 16 97.用户管理-通过命令行创建用户.mp4
  • 17 98.用户管理-用户详情接口.mp4
  • 18 99.bug-中间件认证bug解决.mp4
  • 19 100.用户管理-用户基本信息接口.mp4
  • 20 101.用户管理-写登陆日志.mp4
  • 21 102.用户管理-用户登录列表接口.mp4
  • 22 103.用户登录列表的一些小优化.mp4
  • 23 104.用户管理-修改密码.mp4
  • 24 105.用户管理-重置密码.mp4
  • 25 106.用户管理-邮箱绑定.mp4
  • 26 107.用户管理-个人信息更新-结构体转map.mp4
  • 27 108.用户管理-用户信息修改1.mp4
  • 28 109.用户管理-用户配置修改.mp4
  • 29 110.用户管理-管理员更新用户信息.mp4
  • 30 111.用户管理-参数绑定优化.mp4
  • 31 112.用户管理-apifox编写自定义脚本.mp4
  • 08 文章管理 01 113.文章管理-docker安装和docker配置代理.mp4
  • 02 114.文章管理-mysql主从配置.mp4
  • 03 115.文章管理-es创建和连接.mp4
  • 04 116.文章管理-索引和mapping创建.mp4
  • 05 117.文章管理-es增删改查.mp4
  • 06 118.文章管理-mysql同步es.mp4
  • 07 119.go-mysql-elasticsearch数据同步.mp4
  • 08 120.同步框架配置文件修改.mp4
  • 09 121.mysql主从配置优化.mp4
  • 10 122.同步代码融合-解决依赖问题.mp4
  • 11 123.同步代码融合-配置部分修改.mp4
  • 12 124.同步代码融合-完成.mp4
  • 13 125.重装系统之后的感触.mp4
  • 14 126.文章管理-修改tag的自定义数据类型.mp4
  • 15 127.文章管理-用户侧文章发布.mp4
  • 16 128.文章管理-分类判断和简介提取.mp4
  • 17 129.文章管理-xss解决.mp4
  • 18 130.文章管理-图片转存知识点分析.mp4
  • 19 131.图片转存接口.mp4
  • 20 132.文章发布测试.mp4
  • 21 133.扩展-虚拟机修改ip地址.mp4
  • 22 134.文章管理-文章列表1.mp4
  • 23 135.文章管理-文章列表2.mp4
  • 24 136.文章管理-文章列表置顶文章逻辑.mp4
  • 25 137.文章管理-文章列表-置顶文章查询.mp4
  • 26 138.文章管理-文章列表排序问题解决.mp4
  • 27 139.文章管理-文章更新.mp4
  • 28 140.文章创建和更新的代码优化.mp4
  • 29 141.博客模式下不能发文章.mp4
  • 30 142.文章管理-文章详情.mp4
  • 31 143.文章管理-文章审核.mp4
  • 32 144.文章管理-文章点赞.mp4
  • 33 145.文章管理-文章收藏.mp4
  • 34 146.文章管理-文章浏览量.mp4
  • 35 147.文章管理-文章缓存设置.mp4
  • 36 148.文章管理-查询文章缓存的点赞、浏览、收藏.mp4
  • 37 149.文章管理-文章浏览记录缓存.mp4
  • 38 150.bug解决-文章浏览记录缓存时间问题.mp4
  • 39 151.文章浏览缓存修改.mp4
  • 40 152.文章删除.mp4
  • 41 153.定时任务-文章数据同步.mp4
  • 42 154.文章浏览记录列表.mp4
  • 43 155.文章浏览记录删除.mp4
  • 44 156.分类的创建和更新.mp4
  • 45 157.分类列表.mp4
  • 46 158.分类删除.mp4
  • 47 159.文章列表增加分类名称和发布人信息.mp4
  • 48 160.收藏夹增删改查.mp4
  • 09 评论管理 01 161.评论管理-发布评论.mp4
  • 02 162.评论管理-查根评论.mp4
  • 03 163.评论管理-评论树.mp4
  • 04 164.评论管理-评论树一维化.mp4
  • 05 165.评论管理-评论树转换.mp4
  • 06 166.评论树接口.mp4
  • 07 167.评论列表.mp4
  • 08 168.评论列表接口测试.mp4
  • 09 169.缓存文章评论数.mp4
  • 10 170.评论层级的限制.mp4
  • 11 171.评论树的层级限制.mp4
  • 12 172.评论回复数缓存.mp4
  • 13 173.评论回复数定时任务同步.mp4
  • 14 174.评论删除.mp4
  • 15 175.评论点赞.mp4
  • 16 176.分类options接口.mp4
  • 17 177.标签options接口.mp4
  • 18 178.公开我的收藏功能.mp4
  • 19 179.批量移除我的收藏文章.mp4
  • 10 站内信 01 180.站内信-消息表搭建.mp4
  • 02 181.站内信-用户消息配置表搭建.mp4
  • 03 182.站内信-评论文章消息.mp4
  • 04 183.站内信-回复评论消息.mp4
  • 05 184.站内信-点赞文章消息.mp4
  • 06 185.站内信-点赞评论消息.mp4
  • 07 186.站内信-收藏文章的消息.mp4
  • 08 187.站内信-系统消息.mp4
  • 09 188.站内信-消息配置接口.mp4
  • 10 189.站内信-列表查询接口.mp4
  • 11 190.站内信-没有主键id引发的问题.mp4
  • 12 191.站内信-站内信读取.mp4
  • 13 192.站内信-删除站内信功能.mp4
  • 14 193.全局消息表结构搭建.mp4
  • 15 194.全局消息-创建和列表.mp4
  • 16 195.全局消息删除和用户读取和删除全局消息.mp4
  • 17 196.全局消息接口测试.mp4
  • 18 197.站内信-我的未读消息.mp4
  • 11 好友关系 01 198.好友关系-表结构搭建.mp4
  • 02 199.好友关系-关注用户.mp4
  • 03 200.好友关系-我的关注列表.mp4
  • 04 201.好友关系-用户的关注列表.mp4
  • 05 202.好友关系-粉丝列表.mp4
  • 06 203.好友关系-取消关注.mp4
  • 07 204.好友关系-计算好友关系.mp4
  • 08 205.好友关系-用户列表支持模糊匹配.mp4
  • 09 206.好友关系-批量好友关系计算.mp4
  • 12 用户私信 01 207.用户私信-表结构搭建.mp4
  • 02 208.私信-用户对话方法.mp4
  • 03 209.私信-对话列表.mp4
  • 04 210.私信-对话列表-过滤掉删除是消息.mp4
  • 05 211.私信-消息列表显示消息已读.mp4
  • 06 212.私信-我最近的会话sql查询.mp4
  • 07 213.私信-会话列表-1.mp4
  • 08 214.私信-会话列表-2.mp4
  • 09 215.私信-会话列表-3.mp4
  • 10 216.私信-find至map的代码优化.mp4
  • 11 217.私信-用户删除消息.mp4
  • 12 218.私信-用户批量删除消息.mp4
  • 13 219.私信-用户删除与某个人的聊天记录.mp4
  • 14 220.私信-消息已读.mp4
  • 15 221.私信-创建ws接口.mp4
  • 16 222.私信-在线用户记录.mp4
  • 17 223.私信-消息入参和出参.mp4
  • 18 224.私信-ws响应封装.mp4
  • 19 225.私信-消息落库.mp4
  • 20 226.私信-发信息限制.mp4
  • 21 227.bug解决-mysql查不到的问题1.mp4
  • 22 228.bug解决-mysql查不到的问题2.mp4
  • 23 229.ws消息已读.mp4
  • 24 230.计算我的未读消息.mp4
  • 13 文章搜索 01 231.文章-文章搜索demo.mp4
  • 02 232.文章-文章查询接口-1.mp4
  • 03 233.文章查询接口-2.mp4
  • 04 234.文章搜索接口-3.mp4
  • 05 235.文章搜索接口-4.mp4
  • 06 236.文章搜索接口-5.mp4
  • 07 237.文章搜索接口完成.mp4
  • 08 238.es不同步的问题解决.mp4
  • 09 239.es同步配置持久化问题.mp4
  • 10 240.文章搜索携带文章缓存数据.mp4
  • 14 文章全文搜索 01 241.文章正文转换函数编写1.mp4
  • 02 242.文章正文转换函数完成.mp4
  • 03 243.全文记录创建和删除.mp4
  • 04 244.全文记录更新.mp4
  • 05 245.全文记录同步es.mp4
  • 06 246.全文搜索接口开发.mp4
  • 07 247.未登录的情况下,文章列表只能看前两页.mp4
  • 15 ai大语言模型应用 01 248.文章ai介绍.mp4
  • 02 249.本地跑ollama和大语言模型.mp4
  • 03 250.chatgpt的Demo编写.mp4
  • 04 251.chatGPT非流式输出封装.mp4
  • 05 252.chatGPT流式封装.mp4
  • 06 253.文章正文分析的prompt定义.mp4
  • 07 254.文章正文分析接口.mp4
  • 08 255.文章ai的prompt.mp4
  • 09 256.文章ai接口-1.mp4
  • 10 257.文章ai接口支持sse.mp4
  • 11 258.sse输出的问题解决.mp4
  • 12 259.前端发起sse请求.mp4
  • 13 260.文章ai服务降级.mp4
  • 14 261.文章ai配置信息接口.mp4
  • 16 数据统计 01 269.数据统计-求和数据.mp4
  • 02 270.数据统计-文章统计.mp4
  • 03 271.数据统计-用户统计.mp4
  • 04 272.数据统计-文章浏览统计.mp4
  • 05 273.数据统计-文章按年统计.mp4
  • 06 274.数据统计-系统资源.mp4
  • 17 前后端联调 01 264.联调-站点信息增加对象存储是否启用.mp4
  • 02 265.联调-用户列表接口.mp4
  • 03 266.联调-用户置顶文章.mp4
  • 04 267.联调-管理员置顶文章.mp4
  • 05 268.联调-联调-文章详情增加分类名称和容器时间问题.mp4
  • 06 275.联调-新增用户注销接口.mp4
  • 07 276.联调-用户标签更新失败问题.mp4
  • 08 277.联调-用户详情返回邮箱和是否绑定密码.mp4
  • 09 278.联调-关于文章标签的bug.mp4
  • 10 279.联调-站点配置增加ai启用信息.mp4
  • 11 280.联调-评论列表增加好友关系.mp4
  • 12 281.联调-用户基本信息接口.mp4
  • 13 282.联调-根据收藏夹id查文章列表.mp4
  • 14 283.联调-粉丝、关注列表增加好友关系字段.mp4
  • 15 284.联调-用户基本详情增加好友关系字段.mp4
  • 16 285.联调-文章详情增加字段.mp4
  • 17 286.联调-文章收藏文章点赞问题.mp4
  • 18 287.联调-收藏夹列表增加文章是否在收藏夹中字段.mp4
  • 19 288.联调-评论树增加两个字段.mp4
  • 20 289.联调-评论取消点赞的问题.mp4
  • 21 290.联调-es查标签聚合列表.mp4
  • 22 291.联调-服务降级的聚合查询.mp4
  • 23 292.联调-首页作者推荐接口.mp4
  • 24 293.联调-首页文章推荐接口.mp4
  • 25 294.联调-banner增加一个type字段.mp4
  • 26 295.联调-全文搜索增加一个字段.mp4
  • 27 296.联调-消息列表增加好友关系字段.mp4
  • 28 302.联调-批量移除收藏夹下的文章.mp4
  • 29 303.联调-文章列表查用户收藏文章列表.mp4
  • 30 304.联调-删除用户接口.mp4
  • 31 308.线上登录500问题解决.mp4
  • 18 系统优化 01 297.数据库优化-索引优化.mp4
  • 02 298.水平分表.mp4
  • 03 298.水平分表.mp4
  • 04 299.缓存优化-01.mp4
  • 05 300.给banner列表接口加缓存.mp4
  • 06 301.主动不走缓存策略.mp4
  • 19 项目部署 01 262.mysqldump的依赖报错问题.mp4
  • 02 263.项目部署.mp4
  • 03 305.前端完成之后的项目部署.mp4
  • 04 306.服务器-项目部署01.mp4
  • 05 307.服务器-项目部署02.mp4