开发

为什么我开始从 Next.js 迁移到 TanStack

Created: 06/07/2026

过去很长一段时间里,我的新项目几乎都采用 Next.js + Vercel 方案。但随着项目数量增加,我逐渐发现性能、部署成本和基础设施管理成为新的问题。最近连续使用 TanStack Start 一段时间后,我开始将新站点逐步迁移到 TanStack + Cloudflare 体系。

从实际体验来看,页面打开速度提升明显,Cloudflare 全家桶带来的部署流程更加统一,整体成本也比传统的 Vercel + 第三方数据库方案更低。虽然需要重新适应新的项目结构,但在 AI 开发时代,这部分学习成本并没有想象中那么高。

真正让我改变技术选型的,并不是框架本身,而是底层基础设施带来的整体效率提升。

过去几年,Next.js 几乎是独立开发领域的默认选择。

无论是 SEO、SSR、Server Action 还是生态完整度,它都拥有足够强大的优势。

因此很长一段时间里,我的新项目基本都是:

Next.js + Vercel

这套组合确实足够成熟。

代码提交后自动部署。

配置简单。

开发体验优秀。

对于独立开发者来说,几乎没有什么门槛。

但随着项目越来越多,我发现真正困扰我的问题,并不在开发阶段。

而是在上线之后。

网站速度、服务器成本以及基础设施的管理复杂度,开始逐渐影响整体效率。

这也是我开始关注 TanStack 的原因。

现已上架, shipany-tanstack仅售 ¥9.99 https://www.tplcode.cc/templates/shipany-tanstack Tanstarter模板(赠送Mkimage模板) ¥29.99 https://www.tplcode.cc/templates/tanstarter

很多人讨论框架,其实忽略了基础设施

不少开发者在选择技术栈时,习惯比较框架能力。

例如:

  • 路由能力
  • SSR能力
  • SEO能力
  • 组件生态

但实际运营网站后会发现。

真正影响长期体验的,往往不是这些。

而是网站最终运行在哪里。

表面看是在比较 Next.js 和 TanStack。

实际上是在比较两套基础设施体系。

一套是:

Vercel + 第三方服务

另一套是:

Cloudflare 全家桶

当我开始从这个角度重新审视时,很多事情就变得不一样了。

页面打开速度的提升比预期更明显

最早让我感受到差异的,是网站访问速度。

以前的 Next.js 项目其实也做过不少优化。

例如:

图片压缩。

缓存优化。

组件懒加载。

静态生成。

CDN配置。

这些优化确实有效。

但提升往往是渐进式的。

优化一个环节快一点。

再优化一个环节快一点。

整体体验有所改善,但很难出现质变。

而迁移到 TanStack + Cloudflare 后,我最直观的感受是:

页面变得非常顺滑。

尤其是在全球访问场景下。

首次加载速度明显更快。

页面切换响应也更加流畅。

这种差异并不是跑分工具上的几个数字变化。

而是真实用户能够感知到的体验提升。

很多时候用户并不会关心你使用什么框架。

但用户一定能感受到页面是否卡顿。

访问速度,最终影响的是留存。

部署体验并没有变复杂

很多人担心离开 Vercel 以后,部署流程会不会变得麻烦。

实际体验恰恰相反。

Vercel 最大的优势之一,就是部署简单。

代码推送。

自动构建。

自动上线。

整个流程几乎不需要额外操作。

而 Cloudflare 现在也在快速补齐这部分体验。

尤其是配合 Cloudflare CLI 后。

很多资源都能直接通过命令完成绑定和部署。

例如:

  • Workers
  • R2 对象存储
  • D1 数据库
  • KV 存储

以前可能需要在多个平台之间来回配置。

现在很多步骤都能统一管理。

更重要的是。

AI 编程工具出现后,这种体验进一步被放大。

我现在很多部署工作,都是直接让 AI 帮忙生成配置和命令。

包括:

绑定数据库。

配置 R2。

创建 Worker。

自动部署。

整个过程已经越来越接近自动化。

对于独立开发者来说,这意味着更少的重复劳动。

成本优势开始逐渐显现

当项目只有一个时。

成本差异并不明显。

但当项目开始增加。

情况就不同了。

以前我的方案通常是:

服务方案
前端部署Vercel
数据库第三方数据库
文件存储第三方对象存储
API服务单独配置

看起来每项费用都不高。

但累加起来后,成本并不便宜。

尤其是在多个项目并行运营时。

每新增一个项目。

都意味着新的资源消耗。

而 Cloudflare 的优势在于:

它试图把这些能力统一到同一个生态中。

R2。

D1。

Workers。

KV。

CDN。

全部整合在一起。

结果就是:

管理更简单。

账单更统一。

整体成本也更低。

对于独立开发者来说。

降低固定成本,本质上就是提高项目容错率。

因为并不是每个项目都能赚钱。

但每个项目都会产生费用。

开发体验变化其实没有想象中大

很多人最担心的还是开发成本。

毕竟已经习惯了 Next.js。

重新学习一个框架听起来并不轻松。

我最开始也有同样顾虑。

但实际使用下来发现。

影响并没有那么大。

原因很简单。

现在已经进入 AI 开发时代。

以前学习新框架,需要自己阅读大量文档。

现在很多问题直接交给 AI 即可。

因此真正需要适应的部分主要是:

项目结构。

路由组织方式。

部分 API 使用习惯。

除此之外。

React 开发逻辑并没有本质变化。

对于已经熟悉 React 生态的开发者来说。

迁移成本远低于想象。

很多时候。

最大的障碍不是技术难度。

而是习惯。

我目前的判断

经过一段时间的实际使用后。

我已经把新项目逐步从 Next.js + Vercel 转向 TanStack + Cloudflare。

原因并不复杂。

速度更快。

部署依然简单。

基础设施更加统一。

整体成本更低。

当然,这并不意味着 Next.js 不再优秀。

对于很多成熟团队而言。

Next.js 依然是非常稳妥的选择。

但对于独立开发者、小型团队以及大量工具站项目来说。

Cloudflare 生态正在提供另一种值得认真考虑的方案。

技术选型从来不是选择最先进的工具。

而是选择最适合当前阶段的工具。

当部署成本、访问速度和运营效率开始变得重要时,框架本身反而不再是最关键的因素。