推荐架构:被生产验证过的一套组合
总有人拿着别人画的「架构图」来问我意见:三层微服务、消息队列、容器编排,层层叠叠很唬人。我的回答常让对方一愣:你大概率用不上这里面任何一层。
先交代底气从哪来。我不是科班出身,41 岁,在大型家电集团做了 18 年品类管理的数字化,编程自学。下面这套组合谈不上时髦,但它不是我画饼:我对外运营的内容站(magicsnake.cn,1818 个页面、300 多条音频全自动产出)用它跑了半年以上,集团内网的品类数据检索平台也是同一套思路。能被我天天拿去干活的架构,才有资格推荐给你。
全景图:一共就四层
[交付层] nginx 静态托管 + HTTPS
^ 生成好的 html 落地即上线
[生成/服务层] Node.js 定时任务 + 静态页生成(systemd 守护)
^ 按需调用
[AI 层] 官方 API 按量付费(DeepSeek / GLM)
^ 读写同一个本地文件
[数据层] SQLite(better-sqlite3)—— 全部数据就是一个 .db 文件
自下而上修路,自上而下理解:用户访问的是 nginx 吐出的静态页面;这些页面由 Node.js 的定时任务提前生成;生成过程中按需调用 AI 官方接口;所有内容最终落到一个 SQLite 文件里。
逐层说清「为什么不选更高级的」
数据层:就用 SQLite,单文件起步
理由有三个,都很反直觉。其一,它的能力远超一般人想象,99% 的中小场景是「几十个人白天零零星星访问」,根本喂不饱它。其二,备份等于复制文件——把 .db 拷走就完成了灾备,不需要培训谁都看得懂。其三,没有数据库账号密码、没有连接池要配,凭空少掉一大类故障点和安全隐患。什么时候才轮到 MySQL 集群?等你有了专职 DBA、或日写入到了几十万行的量级再讨论。在那之前上集群,买到的大多是心理安慰。
生成/服务层:Node.js 定时任务+预生成页面,systemd 看着
关键取舍一句话:能提前生成静态页满足的,就不做用户访问时才拼装的动态渲染。静态页天生扛流量(一万个人来也只是读文件)、几乎不存在「宕机」这个话题,还省掉缓存设计的大部分麻烦。进程守护选 systemd 而不是更时髦的容器,理由朴素:十几行配置换来崩溃自动拉起、开机自动启动,一个人的团队也守得住。
AI 层:官方 API 按量付费,先别惦记自建模型
我的站内助手用的是 GLM 这一代的开源型号(GLM-4-9B)走 API,主力批处理用 DeepSeek。调用量小的阶段,本地部署大模型反而最贵:显卡是一次性固定资产,电费和维护是细水长流,而你一个月的实际账单可能只要几十块钱。按量付费还有个隐藏好处——敢于放手试错,试一百次成本也有限,这比「包月随便用」更容易磨出真正有用的玩法。一条纪律不许破:API key 只放服务端配置,前端页面里永远不许出现。
交付层:nginx 静态托管+HTTPS
这一层的哲学就是「没什么可宕机的」。域名解析、证书申请这些一次性动作的完整步骤,我写在了 部署上线;上线后的日常巡检、日志去哪看、磁盘满了怎么办,在 运维与排错 里有现成清单。
组件对照表:对号入座
| 需求规模 | 选什么 | 为什么 | 月成本量级 |
|---|---|---|---|
| 一个流程,每天几十条记录 | SQLite 单文件+单个定时脚本+API 直调 | 半天上线,坏了大不了重启 | 几十元内,几乎全是 API 费 |
| 十几人共用的内部小平台 | 仍是 SQLite,加一个常驻 Node 服务 | 这个并发量惊不动任何数据库集群 | 百元级 |
| 上千页的内容型网站 | SQLite 分表+生成管道定期增补 | 静态页天然扛并发,搜索引擎也友好 | 几百元级,主要是 API 和带宽 |
| 高频写入、多团队共管生产数据 | 这时再谈 PostgreSQL 及以上 | 说明你已经大到需要专人专职了 | 数千元起,还要叠加人力成本 |
最后一句话把态度摆明。在工厂和写字楼里泡了 18 年,我学到的一条铁律是:架构是为规模买单的,多数人的规模根本轮不到分布式。先用最简单的组合把东西做出来、真的有人用起来,等瓶颈出现那天再升级——那一天,通常比你和你请的顾问预估的都要晚得多。
- 把这张 ASCII 图转给替你干活的技术同学或外包,让他指认你们现在落在哪一层——答不上来的要留个心眼。
- 问服务商三个问题:数据存在哪个库、备份怎么操作、API key 放服务端还是网页里。任何一个答不利索,先别付款。
- 导出一份现有业务数据看一眼大小和条数,大概率会发现连 SQLite 开始担心规模的零头都没到。
- 估算真实 AI 开销:日均调用次数 × 官方单价 × 30,拿这个数去对照现在方案的报价。
- 已购云服务器的,登上去数一数正在跑的东西;连自己都数不清,本身就是一次健康预警。