主 题
博客系统自文档 · 附录 C / 19 篇
目录 · 上一篇:SEO、搜索与发现增强 · 系列完结
写在前面
连载主干偏「读写评 + RPG」;本篇补 商业化与运营支撑 能力:支付、邮件、数据大屏、定时任务。若你只做个人博客,可略读;若展示 全栈产品完整度,这是加分项。
功能与体验
支付(支付宝)
| 能力 | 说明 |
|---|---|
| 下单 | POST /pay/order/trade/create(JWT) |
| 查询 / 关闭 / 退款 | admin ext-apps/pay-order |
| 回调 | 支付宝异步通知验签入库 |
模块:blog-server/src/modules/pay/。微信支付在 README 标注为预留。
场景:打赏走 RPG 钻石体系;支付模块更适合 增值订单/赞助 等扩展,与 RPG 经济并行存在。
邮件
| 能力 | 说明 |
|---|---|
| 注册/找回验证码 | Nodemailer SMTP |
| 存储 | Redis email:code:* TTL |
模块:features/email。与 UserService 注册流程配合。
admin 数据大屏
| 入口 | /datascreen |
|---|---|
| 技术 | Vue3 + ECharts + Arco |
| 内容 | 访问趋势、发文趋势、分类饼图、标签词云、TOP 文章、最近动态 |
详见 blog-admin/src/views/dashboard/datascreen/README.md。适合 开放日 / 汇报 展示站点健康度。
定时任务
| 能力 | 说明 |
|---|---|
| 定时发文 | scheduled-task 扫描 status=scheduled |
| 运维 | admin ops-tools 查看执行记录 |
| RBAC 缓存 | 可配置刷新任务 |
设计与实现
flowchart TB
subgraph ops [运营支撑]
Pay[pay 模块]
Email[email + Redis]
Cron[scheduled-task]
Screen[datascreen API]
end
subgraph clients [入口]
Admin[blog-admin]
Home[blog-home-nuxt]
end
Admin --> Pay
Admin --> Screen
Admin --> Cron
Home --> Email
Cron --> MySQL[(article 定时发布)]
安全要点
- 支付回调 URL 需公网可达,验签失败拒绝入账
- 邮件验证码防刷可叠加 IP 限流(第 12 篇)
- 大屏接口走 RBAC,仅管理员角色
踩坑与取舍
- 支付与 RPG 钻石是两套经济:勿在文档中混为一谈;打赏看第 09 篇。
- 大屏数据实时性:多为统计聚合 API,非 WebSocket 推图。
- 定时发布依赖 cron 存活:PM2 只保 server 进程,任务逻辑在 Nest 内。
系列导航
- 导读 · 第 0 篇
- 全系列 00–15 + 附录 16–18 构成完整站点说明书
延伸阅读
blog-server/src/modules/pay/blog-admin/src/views/dashboard/datascreen/

全部评论(0)