Serverless单体架构的崛起( 二 )


从这里开始,我们为每个前端减少了 1 个技术!
Serverless数据库时代
目前,围绕数据库作为服务(DaaS)的解决方案或者说后端作为服务(BaaS)正在兴起 。BaaS的目标是提供应用程序所需的所有功能,以便你无需在后端编写一行代码 。你只需要在你的BFF中编写查询,就完成了 。
最著名的BaaS无疑是Firebase , 它提供了许多功能,如实时文档数据库、身份验证服务、数据库之上的权限机制、文件系统存储等等 。
然而,Firebase也有一些严重的限制:
Firebase 数据库,无论是 Realtime 数据库还是 Firestore,都是单模型数据库(文档数据库) 。
它只能作为一个单向图进行遍历(如果我们可以将其视为图的话) 。
还有另一个叫做Supabase的著名BaaS,试图与Firebase相媲美 。使用类似PostgreSQL的关系型数据库消除了Firebase的一些限制 , 但它仍然是单模型数据库...
最近引起我注意的一个项目是SurrealDB 。它是一个带有内置后端的数据库,具有许多许多功能(我觉得“许多”这个词写得还不够) 。作为一个真正的多模型数据库,并且有一种新的查询语言 , 他们能够提供应该让你写一些代码的功能 。
最近,这种类型的数据库被越来越广泛地称为元数据库 。

Serverless单体架构的崛起

文章插图
完全单体架构
N = META-FRAMEWORK + META-DATABASE
从那里开始,我们在另一个层面上大大减少了技术数量 。
附加内容:利用单一仓库架构
与微服务一样,编写单体应用意味着拥有正确的工具箱 。这个工具箱可以解决我们通常遇到的约束,比如:
太庞大以至于无法失败,一个简单的错误可能会导致整个服务崩溃 。
长时间部署,编译大型项目通常需要很长时间 。
无法跨团队隔离和共享的单一代码库 。
使用这种架构,对纯净和全面的单体架构(前端 + 后端)的需求就不再存在 。然而,元框架是超过 80% 的代码将驻留的部分 。为此,现在有一些工具可以使用 , 例如 turborepo 。
我们还没有提到的一个不可避免的需求是数据库脚本迁移 。当然,这些脚本需要存储在单独的仓库中,没有什么复杂的 。

【Serverless单体架构的崛起】


推荐阅读