第1章 gin框架源码解析
1小时36分钟6节
1-1课程介绍[05:32]
1-2gin框架源码解析之Radix树介绍[18:04]
1-3gin框架源码解析之请求处理[19:58]
1-4gin框架源码解析之路由方法树[14:28]
1-5gin框架源码解析之路由注册与路由匹配[19:41]
1-6gin框架源码解析之中间件详解[19:01]
第2章 Go语言操作常用数据库
3小时2分钟11节
2-1Go连接MySQL[26:22]
2-2database/sql及mysql驱动注册源码分析[15:52]
2-3database/sql增删改查操作[19:58]
2-4mysql预处理和SQL注入[13:14]
2-5MySQL事务操作[12:53]
2-6使用sqlx连接MySQL[09:48]
2-7sqlx基本使用[23:11]
2-8sqlx.In函数介绍和使用[20:21]
2-9使用go-redis连接redis[08:49]
2-10go-redis基本使用[14:24]
2-11pipeline与watch事务[17:53]
第3章 Go Web开发常用组件
3小时12分钟12节
3-1zap日志库介绍[15:10]
3-2zap日志库自定义配置[22:35]
3-3gin框架添加zap记录日志[09:28]
3-4使用viper读取配置信息(配置热加载)[25:10]
3-5从viper获取配置信息[12:11]
3-6优雅关机和平滑重启[14:44]
3-7大型Web项目CLD分层理念[07:44]
3-8搭建较通用GoWeb开发脚手架(上)[16:34]
3-9搭建较通用GoWeb开发脚手架(下)[13:46]
3-10使用结构体变量保存配置信息[21:33]
3-11补充viper库的注意事项[13:51]
3-12补充通过命令行参数获取配置文件路径[19:39]
第4章 bluebell项目实战
11小时33分钟42节
4-1课前唠叨之编程应该怎么学?[05:38]
4-2用户表结构设计[07:46]
4-3基于雪花算法生成用户id[20:26]
4-4梳理注册业务流程[17:48]
4-5请求参数的获取与校验[14:26]
4-6使用validator库进行参数校验[21:33]
4-7创建用户保存至数据库[21:44]
4-8配置mode控制日志输出位置[11:53]
4-9登录功能基本实现[15:11]
4-10定义错误码并封装响应方法[21:49]
4-11用户认证模式介绍[20:04]
4-12JWT(JSON Web Token)介绍[11:24]
4-13在项目中使用JWT认证[21:23]
4-14优化JWT认证中间件[11:49]
4-15解决代码中循环引用的问题[07:02]
4-16refresh token模式详解[17:18]
4-17限制同一账号同一时间只能登录一个设备[08:07]
4-18前端vue实现登录注册功能介绍[10:01]
4-19为Go项目编写Makefile[11:40]
4-20使用Air实现文件实时重载[08:08]
4-21bluebell社区列表接口实现1[19:47]
4-22bluebell社区列表接口实现2[14:03]
4-23bluebell社区详情接口实现[18:54]
4-24bluebell帖子表结构设计及模型定义[14:51]
4-25bluebell实现创建帖子功能[21:17]
4-26bluebell实现帖子详情接口[11:20]
4-27bluebell帖子详情接口优化[13:12]
4-28bluebell分页展示帖子列表[18:50]
4-29解决传给前端数字id失真的问题[26:38]
4-30贴子投票功能需求分析[10:47]
4-31定义投票功能相关redis key[10:42]
4-32贴子投票功能请求参数校验[16:00]
4-33贴子投票功能逻辑分析[15:41]
4-34实现贴子投票功能[28:49]
4-35贴子投票功能测试及完善[15:35]
4-36新版查询贴子接口之获取请求参数[23:07]
4-37新版查询贴子接口之功能实现[25:11]
4-38新版查询帖子接口之获取帖子分数[21:15]
4-39新版查询帖子接口之补充按社区查询[27:46]
4-40新版查询帖子接口整合[08:41]
4-41使用swagger生成接口文档[18:05]
4-42编写单元测试[27:54]
第5章 性能分析及限流组件
1小时39分钟4节
5-1常用的HTTP服务压测工具介绍[14:54]
5-2漏桶令牌桶限流算法介绍及编写限流中间件[24:24]
5-3漏桶及令牌桶第三方库源码解析[36:38]
5-4使用pprof进行性能分析[23:41]
第6章 项目部署
1小时58分钟6节
6-1使用Docker部署Go程序示例[24:30]
6-2使用Docker部署bluebell项目[24:03]
6-3使用Docker Compose部署bluebell[17:12]
6-4使用nohup及supervisor部署bluebe[23:48]
6-5使用nginx部署bluebell的两种模式及跨域问[24:28]
6-6企业中代码发布流程及CICD介绍[04:38]