内容平台技术选型决策记录

记录本站从静态框架、CMS、数据库、对象存储到搜索索引的完整选型过程,含对比表和决策依据。

选型原则

前台框架:为什么是 Astro

前台框架对比
维度AstroNext.jsNuxt
定位内容驱动全栈应用全栈应用
默认 JS 量较多较多
SEO静态最优需配置需配置
MDX 支持原生集成需插件需插件
Content Collections原生

Astro 的 Content Collections 是决定性因素:它给内容加了 schema 校验层,让“内容结构”成为一等公民。

CMS:为什么是 Payload

CMS 方案对比
维度PayloadDirectusStrapi
风格TypeScript Code-first数据库优先通用 CMS
Block 工程
长期扩展适合研发维护适合快速搭适合通用场景
PostgreSQL原生原生支持

Payload 的 Code-first 风格适合我这种研发背景的人长期维护,Block 工程化控制力最强。

数据库:为什么直接 PostgreSQL

  1. 本地用 docker-compose 起 PostgreSQL 16,开发生产同一镜像
  2. 避免 SQLite → PostgreSQL 的迁移折返
  3. 后续 pgvector 扩展直接复用同一实例做 AI 向量检索

对象存储:为什么阿里云 OSS

S3 兼容Payload storage adapter 复用
国内快主受众访问延迟低
MinIO开发期本地替身

搜索:分阶段

搜索方案分阶段
阶段工具适用范围
第一阶段Pagefind静态页面搜索
第二阶段Meilisearch动态内容检索
第三阶段pgvectorAI 语义检索

决策汇总

Astro 前台 + Payload CMS 后台 + PostgreSQL + 阿里云 OSS + Pagefind(起步)/ Meilisearch(升级)/ pgvector(AI)。每一层都用最合适的工具,通过 content-contract 契约层统一类型源。

选型结论本站架构记录