背景 PanSou 盘搜得 是一个夸克网盘资源聚合搜索平台,上线以来月活用户超过 200 万,索引资源量达 800 万+条。随着用户规模增长,原有的 Node.js 技术栈逐渐暴露出一些问题,最终决定进行一次彻底的架构重构。 旧架构的痛点 初版架构采用 Next.js + BullMQ + PostgreSQL + Redis 的组合: Next.js 负责前端渲染和 API Routes BullMQ 处理异步任务(资源转存、定时清理) PostgreSQL 存储资源索引和转存记录 Redis 做查询缓存和任务队列 这套架构在早期运行良好,但随着流量增长,问题逐渐显现: 1. 并发处理能力受限 Node.js 单线程模型在高并发场景下压力明显。搜索请求需要调用上游 API 、数据库查询、Redis 缓存,在流量高峰期 P99 响应时间经常突破 2 秒。 2. 资源占用偏高 Next.js 进程内存占用大,加上 BullMQ Worker 进程,整体资源消耗不低。在用户量翻倍后,服务器成本压力开始显现。 3. ...