Skip to content

Commit 4fefbf7

Browse files
committed
小傅哥,docs:ChatGPT 微服务应用体系构建
1 parent 4b57279 commit 4fefbf7

File tree

9 files changed

+109
-8
lines changed

9 files changed

+109
-8
lines changed

docs/.vuepress/config.js

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1604,19 +1604,18 @@ function getBarZSXQ() {
16041604
"material/notes.md",
16051605
"material/study-experience.md",
16061606
"material/exam.md",
1607-
"material/openai.md",
16081607
]
16091608
},
16101609
{
16111610
title: "实战项目",
16121611
collapsable: false,
16131612
sidebarDepth: 0,
16141613
children: [
1615-
"project/lottery.md",
1616-
"project/im.md",
1614+
"project/chatgpt.md",
16171615
"project/api-gateway.md",
1618-
"project/bug-code.md",
1616+
"project/lottery.md",
16191617
"project/springboot-starter.md",
1618+
"project/im.md",
16201619
]
16211620
},
16221621
{
@@ -1639,6 +1638,15 @@ function getBarZSXQ() {
16391638
"source-code/develop-mybatis.md",
16401639
]
16411640
},
1641+
{
1642+
title: "其他内容",
1643+
collapsable: true,
1644+
sidebarDepth: 1,
1645+
children: [
1646+
"project/bug-code.md",
1647+
"material/openai.md",
1648+
]
1649+
},
16421650
{
16431651
title: "关于星主",
16441652
collapsable: true,
275 KB
Loading
351 KB
Loading
222 KB
Loading

docs/md/zsxq/project/api-gateway.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: API网关:中间件设计和实践
3-
lock: need
3+
lock: no
44
---
55

66
# API网关:中间件设计和实践
@@ -12,6 +12,7 @@ lock: need
1212

1313
作者:小傅哥
1414
<br/>博客:[https://bugstack.cn](https://bugstack.cn)
15+
<br/>星球:[https://t.zsxq.com/0diYdgP5u](https://t.zsxq.com/0diYdgP5u) - 课程入口
1516

1617
>沉淀、分享、成长,让自己和他人都能有所收获!😄
1718

docs/md/zsxq/project/chatgpt.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
---
2+
title: ChatGPT 微服务应用体系构建
3+
lock: no
4+
---
5+
6+
# ChatGPT 微服务应用体系构建 - API-SDK、鉴权、公众号、企业微信、支付服务
7+
8+
作者:小傅哥
9+
<br/>博客:[https://bugstack.cn](https://bugstack.cn)
10+
<br/>星球:[https://t.zsxq.com/0d3o5FKvc](https://t.zsxq.com/0d3o5FKvc) - 课程入口
11+
12+
>沉淀、分享、成长,让自己和他人都能有所收获!😄
13+
14+
## 一、产品形态
15+
16+
这趟车🚌,本身的核心是关于**微服务应用体系的构建**,通过讲解配置`Docker``Nginx``SSL`等环境以及开发出`鉴权``认证``微信公众号``企业微信``支付宝交易`等模块的方式,完善体系的物料服务。而 ChatGPT 只是其中的一种产品形态而已,这种产品形态通过 API 的方式与具体的物料服务模块解耦。这样做的方式是因为基础的物料`【物料指SDK和服务】`并不会频繁变化,而离业务最近的 API 会随业务变动发生较多的改动。所以这样的应用架构方式,在互联网大厂中也是非常常见和常用的。
17+
18+
这些东西的价值在于架构思维,而我也希望授人以渔,教会大家一些根本的东西,而不是永远的在CV+CRUD。有了这样的学习,学习的就不只是这样一个项目,而是可以把这个项目中所涉及的组件开发,都能进行任意物料模块与需要对接的服务进行关联打通使用。方便`写到简历``用到项目``实战锻炼``积累经验`
19+
20+
## 二、项目的架构
21+
22+
- **目标**:此项目以围绕类似 ChatGPT 生成式服务,构建微服务应用架构体系组件。包括;用户鉴权、公众号、多方支付、企业微信等对接方式,满足不同诉求的使用。并以模块化设计,积木式构建应用,让不同的场景诉求都可以配置化对接。
23+
- **功能**:更直白一些就是通过这套微服务体系,可以构建出;`网页版ChatGPT对接``用户鉴权校验接口``关注公众号解锁``支付付费购买``公众号自动回复``企业微信聊天对接``知识星球对接`等。
24+
25+
那么这套系统是以`视频``小册`的教程为导向,教会大家开发这些各个模块的技术组件和技术服务。同时这里的组件和服务,都是微服务实现,可以被替换成其他任何一个你所需的内容。比如不是对接 ChatGPT 而是你想对接一个其他的服务也是可以的。
26+
27+
**整个系统架构如下**
28+
29+
<div align="center">
30+
<img src="https://bugstack.cn/images/article/project/chatgpt/chatgpt-230422-01.png?raw=true" width="750px">
31+
</div>
32+
33+
如图;以用户请求为入口,通过 `Nginx SSL 443` 校验转发到对应的服务,并做相关的鉴权和服务控制,并完成最终的 token 授权使用。整套微服务包括系统;`chatgpt-api-sdk``chatgpt-auth``chatgpt-wx``chatgpt-pay``chatgpt-zsxq``chatgpt-admin``chatgpt-web` 服务。
34+
35+
## 三、拓扑结构
36+
37+
接下来我们再以工程拓扑的视角看下这套需要开发的系统;
38+
39+
<div align="center">
40+
<img src="https://bugstack.cn/images/article/project/chatgpt/chatgpt-00-01.png?raw=true" width="850px">
41+
</div>
42+
43+
如拓扑结构,系统从上到下以不同的产品形态,统一调用封装的服务API进行功能的流转。API系统中所处理的核心动作,会以各个物料模块进行实现。所以这里会拆分出标准的 ChatGPT-API 业务系统,之后再由各个模块系统支撑。到具体的模块中再进行详细的系统设计。
44+
45+
## 四、技术使用
46+
47+
此项目会使用到 `SpringBoot``MyBatis``MySQL``Redis` 等技术栈,但因本项目主要以小成本,轻量维护的实际使用为主,所以不会过多引入分布式技术栈。所以在设计实现上,主要以小而美、小而精,且能匹配到真实场景的使用为主。—— 分布式技术栈是为了更大规模的体量使用,但也会为此付出运维和应用服务器成本。所以一些中小厂的项目或者创业类型的项目,都会优先更轻量级技术栈使用,以此减少这部分成本。
48+
49+
除技术栈的使用外,涉及到开发工具包括;`IntelliJ IDEA``WebStorm``Docker``Protainter``Nginx``Git``Maven``Navicat``SSH工具`等,以满足开发代码中的使用。
50+
51+
关于此项目可能还会涉及少部分 Next.js、Typescript 等前端知识,方便做 Web UI 的开发。
52+
53+
## 五、课程计划
54+
55+
<div align="center">
56+
<img src="https://bugstack.cn/images/article/project/chatgpt/chatgpt-00-03.png?raw=true" width="850px">
57+
</div>
58+
59+
此课程会包括,基础设置、模块开发、API服务等几块内容,而基础设施主要为一些基本操作,小傅哥会把一些这样的内容都放到这块,方便很多新人伙伴学习使用。这里会分为3个大的步骤;
60+
61+
1. 在基础设置的基本必备服务搭建后,会进入接口鉴权的简单开发,这个模块开发后,大家就可以简单的使用了小傅哥提供的 OpenAI 了接口了。—— 当然你如果自己有 OpenAI 接口,也可以直接使用。**[https://huggingface.co/](https://huggingface.co/) 也提供了一些可以免费使用的简单 Open-API**
62+
2. 有了这部分内容的使用,后续会进入 API-SDK 的开发,以及网页的简单开发。通过这样的开发构成一套基本的模块服务。ChatGPT-WEB-UI -> API-SDK -> 鉴权 -> OpenAI 的使用。
63+
3. ChatGPT-WEB-UI 流程🏃🏻跑通后,就可以逐步扩展其他服务模块。让业务与场景结合,如关注公众号、公众号回复、企业微信机器人、交易支付购买授权Token。这个过程可以让 ChatGPT-WEB-UI 与各个模块结合使用。
64+
65+
## 六、如何开始
66+
67+
这套课程会以`视频``小册``代码``作业`的方式进行推进,视频主要以演示操作、讲解核心的方式进行,并在小册和对应的代码中细化细节展示。鉴于星球有些在校的编程新手,所以关于`工程的创建``代码的提交``镜像的打包``容器的部署`等这些基础操作,也都会在视频中进行演示,方便大家更容易的上车。
68+
69+
### 1. 开通权限
70+
71+
星球课程涉及的代码部分会通过 [gitcode.net](https://gitcode.net/KnowledgePlanet) 提供,你只需要申请一次就可以授权到星球所有课程的代码仓库。授权申请地址:[https://t.zsxq.com/0dS1kW2r9](https://t.zsxq.com/0dS1kW2r9) - 审核后即可访问星球的项目仓库了。
72+
73+
### 2. 加群交流
74+
75+
小傅哥为星球伙伴创建了专属的VIP技术交流群,你可以通过扫码添加小傅哥的微信,备注上`你的星球编号`。我会给你拉到专属的微信群。
76+
77+
<div align="center">
78+
<img src="https://bugstack.cn/images/article/project/chatgpt/chatgpt-00-02.png?raw=true" width="850px">
79+
</div>
80+
81+
### 3. 推荐工具
82+
83+
推荐工具;- 随着课程讲解会引导大家安装这些工具。
84+
- [Termisu](https://termius.com/):云服务器链接工具,自带一套 SFTP 工具,很好用。
85+
- IDEA 插件:`Sequence Diagram` - 用于方法上右键查看代码流程的,主要帮助大家理解代码。
86+
- [Docker](https://www.docker.com/) - 可本地安装,不需要非得购买云服务器,也可以满足学习诉求。
87+
- [natapp](https://natapp.cn/) - 内网穿透工具,相当于你开启后,可以分配给你一个域名,让外网访问到你的服务。
88+
89+
---
90+
91+
好啦🌶,我们的课程列车🚄😆🙈💃🙆🏃🏻‍♀️即将启动,你准备好了吗🐴!

docs/md/zsxq/project/im.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ lock: no
77

88
作者:小傅哥
99
<br/>博客:[https://bugstack.cn](https://bugstack.cn)
10+
<br/>星球:[https://t.zsxq.com/0dbJRLamf](https://t.zsxq.com/0dbJRLamf) - 课程入口
1011

1112
>沉淀、分享、成长,让自己和他人都能有所收获!
1213

docs/md/zsxq/project/lottery.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ lock: no
77

88
作者:小傅哥
99
<br/>博客:[https://bugstack.cn](https://bugstack.cn)
10-
<br/>星球:[https://t.zsxq.com/05zj2niYR](https://t.zsxq.com/05zj2niYR)
10+
<br/>星球:[https://t.zsxq.com/0dzlIyK5Z](https://t.zsxq.com/0dzlIyK5Z) - 课程入口
1111

1212
> 沉淀、分享、成长,让自己和他人都能有所收获!😄
1313

docs/md/zsxq/project/springboot-starter.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
22
title: SpringBoot 中间件设计和开发
3-
lock: need
3+
lock: no
44
---
55

66
# SpringBoot 中间件设计和开发
77

88
作者:小傅哥
99
<br/>博客:[https://bugstack.cn](https://bugstack.cn)
10-
<br/>星球:[https://t.zsxq.com/05zj2niYR](https://t.zsxq.com/05zj2niYR)
10+
<br/>星球:[https://t.zsxq.com/0d7qkNTdA](https://t.zsxq.com/0d7qkNTdA) - 课程入口
1111

1212
>沉淀、分享、成长,让自己和他人都能有所收获!😄
1313

0 commit comments

Comments
 (0)