从Firebase+Redis迁移到PlanetScale+MySQL


这是来自Robinson博客:几周前,我将这个站点从使用FirebaseRedis转移到了 PlanetScale。PlanetScale是一个基于 MySQL 和 Vitess 构建的无服务器数据库平台。这就是我选择 PlanetScale 的原因:

  • 数据库分支:我可以使用与 git 相同的思维模型来使用我的数据库。对于我的数据库架构的每次更改,我都会打开一个部署请求。然后,我可以将这些更改合并回我的主数据库分支。
  • Prisma 支持:与 Prisma 结合使用,可以轻松处理数据库迁移。我还没有迁移到 Prisma(还),但很快就会。
  • 无连接:由于 PlanetScale 是无服务器的,因此可以承受数千个同时连接。您几乎可以考虑这种无连接——开发人员无需担心池化或其他常见的反对意见
  • 超快:在测试了 13 个数据库后,PlanetScale 是部署速度最快的。现在,在使用它几周并监控性能后,我看到 API平均~150ms。

 
Firebase 和 Redis(通过Upstash)都很容易上手,无需思考即可扩展,并且在无服务器环境中运行良好。但是,我想转向基于 SQL 的SQL-based东西(MySQL 或 PostgreSQL)以获得新的学习体验。

为什么选择 MySQL 和 PlanetScale?
SQL 是乏味的、经过验证的技术。它已经存在多年,并将继续存在多年。我以前在以前的工作中使用过它,但仍然觉得我可以更好地理解它。我也喜欢使用 PostgreSQL(并推荐 Supabase),并且也强烈考虑了该解决方案。我打算很快用 Supabase 构建一个不同的项目。
我也坚信使用我推荐的工具。如果我不亲自动手编写代码并在生产中运行应用程序,就很难自信地向他人推荐产品。使用PlanetScale Vercel Integration 后,我被震撼到了。只需单击几下,我就可以部署整个全栈应用程序。正如我在开始时提到的,数据库迁移与我的心智模型一致。
详细点击标题