零声教育 Golang云原生 ChatGPT项目实战
零声教育 Nick
2023-06-10
课程购买地址:
企业级go项目实战课-从0带你实现ChatGPT项目
chatgpt/golang/docker/gitlab/企微/
QQ/公众号 手把手上线项目课程
后台服务
服务运维
OneBot的实现go-cqhttp接管QQ
开源组件快速接入chatgpt实现QQ消息回复
公众号接口测试号申请
sync.Pool 实现grpc客户端连接池接入后端服务
企业微信应用创建及应用配置
需求、设计与环境
web、QQ、公众号、企微
设计思路
OneBot协议是什么
OneBot Http与HTTP Webhook通信
OneBot正向WebSocket与反向WebSocket通信
OneBot事件、动作请求与动作响应
OneBot基本数据类型
gitlab与gitlab-runner 实现持续集成
公众号关注事件推送以及XML消息解析与回复
普通消息接收以及XML解析与文本消息回复
通过客服消息异步发送chatgpt回复
普通消息接收以及XML解析与文本消息回复
sync.Pool实现grpc客户端连接池接入后端服务
Nginx 反向代理4个ChatGPT客户端
Docker Swarm集群运维项目
实现与chatGPT的对话需求
支持开启和关闭chatGPT角色扮演模式
实现聊天上下文发送并支持群组上下文
支持Web端匿名访问上下文发送
实现敏感问题的识别与过滤
实现问题的关键词提取
实现ChatGPT请求与响应token计数
聊天记录持久化到数据库
支持Web端请求流式响应
支持分布式部署方便横向扩展
基于开源项目开发和部署ChatGPT项目
微服务开发将项目拆分为若干个服务
tokenizer服务实现tokens计数功能
chatgpt-proxy服务实现境外chatGPT API访问
chatgpt-data服务实现聊天记录持久化
sensitive-words服务实现敏感问题识别与过滤
keywords服务实现关键词提取
chatgpt-service服务实现对chatgpt访问的封装
crontab服务实现公众号与企微接口调用凭据的刷新
chatgpt-web实现web协议解析
cqhttp开源项目实现QQ服务器代理
chatgpt-qq 实现QQ协议解析
chatgpt-wechat-official 实现公众号协议解析
chatgpt-wecom 实现企业微信协议解析
MySQL为数据库用于数据持久化
Redis为KV缓存用于项目数据缓存场景
docker swarm 集群为容器化部署平台
gitlab 用于项目代码管理以及持续集成
环境准备
腾讯云购置境外云主机
golang编译环境安装
docker安装以及docker swarm集群初始化
gitlab社区版安装配置
docker私有注册中心搭建
mysql 与redis 准备
Linux编译运行开源的chatgpt-web
Windows编译运行开源的chatgpt-web
tokenizer计数服务
chatgpt-proxy境外代理服务
chatgpt-data数据服务
sensitive-words敏感词识别服务
keywords关键词提取服务
crontab定时任务服务
docker是什么
docker解决了什么问题
docker的技术边界
虚拟机与容器的区别
docker镜像的分类
docker镜像构建流程
docker build 构建缓存逻辑
docker镜像分层原理
dockerfile的基本语法
dockerfile健康检查的配置
tokenizer镜像构建
docker run指令的基本使用逻辑
容器的隔离与Linux namespace
容器的资源限制与cgroup控制组
gin框架Basic Auth鉴权
gin框架路由与controller
ReverseProxy代理chatgptAPI
gin框架中间件编程与Bearer Token鉴权
配置文件解决方案viper
logrus与lumberjack日志滚动记录
chatGPT API参数释义及使用
testing测试框架功能测试
testing测试框架性能测试与并发测试
pprof性能分析指标以及常用指令
服务的限流以及限流原理
Dockerfile多阶段定义以及构建
Dockerfile ADD 与COPY的区别及用法
Dockerfile CMD 与 ENTRYPOINT的区别及用法
docker 私有注册中心的使用
docker service 服务更新与回滚策略
docker service 配置文件的更新与删除
docker service 服务健康检查的配置
数据库的选择与数据库设计
gRPC环境安装与使用流程
Protobuff协议以及服务定义
gRPC Server端实现以及依赖注入
gRPC Server端单元测试
gRPC Keepalive保活策略以及客户端强制策略
gRPC TLS/MTLS/OAUTH服务通信安全策略
gRPC metadata上下文数据传输
gRPC 单TCP连接多路复用实现健康检查机制
二叉搜索树与词库重排
敏感词识别服务的实现
敏感词识别服务打包与部署
关键词提取服务的实现
关键词提取服务打包部署
crontab 工作流程
微信公众号SDK接入定时获取调用凭据
企业微信SDK接入定时获取企微调用凭据
gRPC服务对外提供调用凭据的访问
定时任务服务的打包和部署
ChatGPT客户端
Web
QQ
微信公众号
企业微信
web数据协议解析
sync.Pool 实现gRPC客户端连接池接入gRPC Server
chatgpt-service服务
gRPC微服务项目脚手架搭建
服务的设计逻辑与思路
chatgpt API响应数据协议解析
服务端基本请求流程实现
redis连接池与上下文管理
gRPC 客户端连接池以及gRPC 服务的接入
Logrus日志框架的接入
viper 配置文件解决方案的接入
docker build 参数化构建
gin框架静态资源文件部署
实现WebSocket Server 用户cqhttp反向WebSocket
携带上下文发送请求
零声服务
适宜工程师人群
参考书籍
学习方法大6点
学习方法小5点
学/转golang缺乏分布式项目经验的开发工程师
计算机专业本科学历应届毕业生
有一定基础的情况,可根据实际情况侧重学习某个板块
多想,遇到任何问题,深入思考找到真正的问题
多练,通过练习将知识点融汇贯通
多问,通过自己思考和尝试仍不理解的问题,多找老师沟通
多讨论,找身边的同时朋友讨论技术问题
每节课程先预习课件,提出一些疑问,再看视频学习,看完一遍视频之
后再练习
课后总结:学到什么,可以在哪些场景应用,没学懂的内容有哪些,反
复学习练习
将学到的内容以文档、博客或其他形式向外输出,通过这种方式整理知
识点之间逻辑关系,加强学习效果
如果可以,建议参加零声学院的费曼学习计划,巩固所学知识
通过自己努力搞不懂的问题,积极与老师沟通
《Go 语言底层原理剖析》
《Docker 实践》
《Docker 容器与容器云 第2版》
目标岗位
golang高级开发工程师
运维开发工程师
云计算开发工程师
golang服务端开发工程师
中后台开发工程师
缺乏微服务项目经验与云原生项目经验的golang工程师
一般情况下课根据大纲从前往后学习,层层递进
课程服务
老师在线答疑
面试简历梳理
面试总结复盘
课程数据
课程时长:70小时
总计代码行数:2w+
微服务数量:11个
服务器1台,4核8GB
目前线上请求数量:10w+/天
课程收获
微服务项目实战经验
gin、gRPC、viper、logrus、crontab工程组件实战应用
公众号、企微项目开发经验
nginx、docker、gitlab项目运维实战
课程大纲仅供参考,具体内容以上课为主
中间件redis与mysql实战应用
个人微信端接入
微信扫码登录、热登录以及免扫码登录
MessageHandler 个人消息与群消息处理
gRPC 接入ChatGPT服务
项目运营问题的解决
一个更显专业的Web前端页面
ChatGPT每分钟限流问题如何解决
Docker Swarm 集群管理与节点管理
Docker Swarm集群如何使用私有注册中心
Compose file定义与Stack部署
根据访问地址Path部分代理后台服务
代理Websocket服务
代理静态网页
代理流式服务端
gitlab 持续集成与持续部署基本逻辑
gitlab 与gitlab runner的安装与升级
gitlab-ci配置文件基本语法以及流程控制
gitlab-ci 内置变量以及自定义变量
Created With
MindMaster