别再用 Firebase 了… 试试这个开源替代方案 (Appwrite)

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00在你的应用真正开始增长之前,Firebase 确实非常棒。
00:00:03有了用户,流量也上来了,突然间,后端不再是问题,
00:00:09真正的问题变成了你的账单。
00:00:10更糟糕的是,你意识到你其实无法控制自己的后端,因为控制权在 Firebase 手里。
00:00:14但如果能保留所有优点——身份验证、数据库、存储、实时
00:00:19函数等等,并在掌控数据的前提下自己运行它们呢?
00:00:24这就是 AppWrite,一个在过去一年中
00:00:28吸引了许多开发者转向的开源项目。
00:00:29让我们来看看如何在几分钟内完成设置。
00:00:37我们知道 Firebase 提供身份验证、实时数据库、存储、消息推送等
00:00:42这些好用的功能。
00:00:43这也是为什么这么多开发者会从它开始。
00:00:45AppWrite 提供了相同的核心构建块,此外还有团队管理、自托管、消息服务商,
00:00:52甚至是 AI 工具。
00:00:54这里的区别很简单。
00:00:55这是你的服务器,你的 VPS,你的配置,一切规则由你定。
00:00:59如果你喜欢这些能加速开发流程的开源工具,请务必
00:01:03订阅 Better Stack 频道。
00:01:05现在通过 AppWrite,我们可以获得邮箱登录、OAuth、魔术链接、匿名登录,
00:01:10甚至是多因素身份验证(MFA)。
00:01:12你还能获得一个融合了文档型和关系型结构的实时数据库。
00:01:15还拥有带文件转换功能的存储系统。
00:01:17我们支持超过 13 种语言的无服务器函数,以及推送、邮件、短信等消息服务,
00:01:23功能非常全面。
00:01:24你可以选择自托管或使用云服务。
00:01:27而且最让人惊讶的地方在于,
00:01:28尽管它如此强大,但自托管起来其实非常容易。
00:01:32所以我们别光说不练。
00:01:34让我们现在就把它跑起来,我好向大家展示如何将 AppRite
00:01:38集成到你的项目中。
00:01:39第一步很简单。
00:01:41确保 Docker 正在运行,好吗?
00:01:43然后在你的终端里,输入这个命令,
00:01:46我们要运行一个 Docker Compose 命令。
00:01:49就这样。
00:01:50后端已经搭建好了。
00:01:51随时可以使用。
00:01:52它会引导我们进入这个页面,你可以创建新账号
00:01:56或登录现有的 AppRite 账号。
00:01:58现在我们要在这里创建一个新项目。
00:02:00我就叫它 "TodoApp",因为这就是我们要展示的内容。
00:02:04然后我们复制项目 ID。
00:02:06之后我们需要把它添加到 ENV 环境文件中,你可以现在保存,
00:02:10或者直接把它填进 ENV 文件。
00:02:13接下来我们要为本地开发添加一个 Web 平台。
00:02:16依次进入 Auth、Web App,然后点击添加平台。
00:02:19我们可以将主机名设为 localhost,然后直接保存。
00:02:23现在我们可以设置数据库并创建一个集合(Collection)。
00:02:26在数据库中,一个集合其实就相当于一张表。
00:02:30你可以根据需要创建任意数量的列。
00:02:33对于这个项目,我会使用邮箱、标题、内容,
00:02:38再加上用户 ID。
00:02:40我们可以在这里设置权限。
00:02:42"Any"(任何人)是指无论是否登录的用户。
00:02:45所以我把这些设为只读。
00:02:48其余的操作将只针对已登录的用户。
00:02:51既然是待办事项清单,
00:02:52让我们把基本的增删改查(CRUD)操作都勾选上。
00:02:57这是最棒的部分之一,因为 AppRight 在后端直接处理了这一切。
00:03:02非常简单。
00:03:03只需要勾选几个框就行。
00:03:05现在我们可以把它连接到代码中了。
00:03:06我们可以将端点(Endpoint)和所有数据(包括项目 ID、
00:03:10数据库 ID 和表名)直接填入项目的 ENV 文件。
00:03:16看起来复杂的完整后端设置,实际上只是我们将 AppRight 中的
00:03:20几个小部分连接到了代码里。
00:03:23好的。
00:03:24现在让我们测试一下。
00:03:25我们可以启动它。
00:03:26我要去这里创建一个新的用户账号。
00:03:29开始注册。
00:03:30登录之后,我们可以尝试创建一个任务。
00:03:33我给它一个标题和一些描述,
00:03:37然后点击添加。
00:03:38瞧。
00:03:39你可以看到这里没有任何报错,对吧?
00:03:41它正在将数据推送到我们的应用。
00:03:43如果我们回到 AppRight 后台,就能看到数据传过来了。
00:03:48现在如果我开两个标签页,在一个标签页登录,
00:03:53在另一个标签页保持未登录状态。
00:03:54当我在第一个标签页推送数据时,它也会出现在第二个标签页上,
00:03:59因为我们为所有人设置了只读权限。
00:04:03只需极少量的代码,我们就实现了身份验证下的全流程同步,
00:04:08它能写入数据并更新数据库,还能提取数据
00:04:13并在多个页面上显示。
00:04:14那么,为什么开发者们会转向 AppRight 呢?
00:04:17首先,最明显的一点。
00:04:18是所有权。
00:04:19数据是你自己拥有的,对吧?
00:04:21这是一个开源项目。
00:04:23它能让你更好地保护隐私。
00:04:25此外,这里没有所谓的“按席位计费”,明白吗?
00:04:27当你使用 Firebase 或 Supabase 扩大规模时,会产生一些隐藏费用。
00:04:31嗯,也不算隐藏,但总之会有费用产生。
00:04:35而且 AppRight 拥有的大多数功能,Firebase
00:04:39和 Supabase 也同样具备。
00:04:40所以你其实并没有损失任何功能。
00:04:42你可以自托管或者使用云服务,它们的 SDK 对
00:04:47React 和 Flutter 的支持也相当不错。
00:04:49再说一次,它毕竟是开源的。
00:04:51它也许不完美,但作为开发者,我们可以很快搞定这些细节。
00:04:55所以这不会成为一个很大的痛点。
00:04:57唯一前提是你需要了解 Docker,但这也很容易学。
00:05:00好的。
00:05:01如果你懂 Docker,这简直太棒了,因为部署速度飞快。
00:05:05它没有内置全球 CDN 或边缘计算函数。
00:05:07所以如果你需要这些,你得自己集成像 Cloudflare 这样的服务。
00:05:10它的数据库是基于 MariaDB 的。
00:05:13所以它不像 Supabase 那样拥有 Postgres。
00:05:16如果你想把规模做大,你需要某种监控手段,
00:05:20这对于任何自托管工具来说都是必然的。
00:05:22而这正是像 Better Stack 这样的工具大显身手的地方。
00:05:26那么你到底应不应该使用它?或者更好的问题是,它适合谁?
00:05:30也许你是一位想要避免昂贵账单的开发者或初创公司。
00:05:34好的。
00:05:35这非常合适。
00:05:36这真的很酷。
00:05:37如果你更注重隐私并追求完全的掌控权,它也会很适合你。
00:05:40对于想要优秀 SDK 的 Flutter 和移动开发者,
00:05:44这同样是个绝佳选择。
00:05:45记住,我们确实大幅降低了开支。
00:05:47所以只要你想省钱,那它就适合你。
00:05:49是的,这是一个很酷的工具。
00:05:52如果随着增长 Firebase 变得太贵,而 Supabase 让你觉得组件太多太复杂,
00:05:56我觉得 AppRight 恰好处于两者之间的平衡点。
00:06:00这就是为什么它是进入 2026 年的一个有力选项。
00:06:04就在这几分钟里,我们搭建了后端,同步了一切,并了解了为什么
00:06:08它是这么多寻找 Firebase 和 Supabase 替代方案的开发者的好选择。
00:06:13如果你想尝试一下,我在说明栏里放了一些链接和文档,
00:06:17去看看吧。
00:06:18部署只需要不到几分钟。
00:06:20绝对值得一试。
00:06:21如果你喜欢这类编程视频和开源工具,请务必
00:06:25订阅 Better Stack 频道。
00:06:27我们下个视频再见。

Key Takeaway

Appwrite 是一个功能全面、部署快捷且具备高性价比的开源后端服务平台,是寻求逃离 Firebase 昂贵定价和厂商锁定的开发者的理想选择。

Highlights

  • Firebase 在应用规模扩大后面临高昂账单和控制权缺失的问题

  • Appwrite 作为开源替代方案,提供身份验证、实时数据库、存储及无服务器函数等核心功能

  • 支持 Docker 一键部署,开发者可以完全掌控自己的服务器(VPS)和数据隐私

  • 相比 Supabase,Appwrite 在功能丰富度和上手难度之间取得了更好的平衡

  • 提供针对 React、Flutter 等主流框架的优质 SDK,且支持 13 种以上语言的函数编写

  • Appwrite 采用 MariaDB 架构,虽然没有内置 CDN,但具有极高的部署灵活性

Timeline

Firebase 的局限性与 Appwrite 的崛起

视频开篇指出了开发者在使用 Firebase 时普遍面临的痛点,即随着应用用户量和流量的增长,后端维护成本会因计费模型而大幅飙升。更核心的问题在于开发者失去了对后端的控制权,因为所有逻辑和数据都托管在闭源平台上。Appwrite 作为一个开源项目,旨在保留 Firebase 所有优点的同时,赋予开发者完全的控制权。它在过去一年中吸引了大量开发者转型,成为后端服务领域的重要竞争者。这一节强调了在掌控数据的前提下运行身份验证、数据库和存储等功能的重要性。

Appwrite 核心功能与架构优势

本段详细对比了 Appwrite 与 Firebase 的功能构成,涵盖了身份验证、实时数据库、存储和消息推送等核心构建块。Appwrite 特别增加了团队管理、自托管支持、多种消息服务商集成以及 AI 工具等额外功能。在身份验证方面,它支持 OAuth、魔术链接、匿名登录及多因素认证(MFA),功能非常全面。其数据库融合了文档型和关系型的优点,并支持超过 13 种编程语言的无服务器函数。视频强调了“你的服务器、你的规则”这一理念,展示了自托管模式带来的极高自由度。

实战演示:快速搭建 Appwrite 后端

演讲者演示了如何通过 Docker Compose 命令在几分钟内完成 Appwrite 的本地环境搭建。首先需要确保 Docker 运行,执行简单的安装脚本后即可访问管理后台并创建名为 "TodoApp" 的项目。接着展示了如何为 Web 平台配置主机名,并详细讲解了数据库集合(Collection)的创建过程,这在 Appwrite 中相当于关系数据库中的表。开发者可以根据需求定义列属性并设置权限,例如将未登录用户的权限设为只读。这种图形化界面的配置方式极大简化了后端逻辑的编写工作,体现了工具的易用性。

代码集成与实时同步功能测试

这一部分展示了如何将配置好的 Appwrite 服务连接到前端代码中,关键在于将端点、项目 ID 和数据库 ID 填入环境变量文件。通过创建一个简单的待办事项应用,视频演示了用户注册、登录以及数据推送的完整流程。测试结果显示,数据能够无误地从前端推送到 Appwrite 后台,并在控制台中实时显示。更令人印象深刻的是,由于设置了只读权限,未登录的标签页也能即时同步已登录用户创建的内容。这证明了 Appwrite 在处理身份验证下的全流程同步方面具有极高的效率和稳定性。

为何选择 Appwrite:深度分析与适用人群

视频深入分析了开发者转向 Appwrite 的几大理由,其中最关键的是数据所有权和隐私保护。与 Firebase 或 Supabase 不同,Appwrite 避开了复杂的“按席位计费”陷阱,有效降低了项目的隐性扩展成本。虽然它目前没有内置全球 CDN,且数据库基于 MariaDB 而非 Postgres,但这些可以通过集成 Cloudflare 等外部服务或利用监控工具来弥补。对于熟悉 Docker 的开发者来说,这些微小的学习曲线并不会构成严重的痛点。这一节明确了 Appwrite 在功能平衡性上的优势,其 SDK 对 React 和 Flutter 的支持也处于行业领先水平。

总结:2026 年的后端开发新趋势

在总结部分,演讲者再次肯定了 Appwrite 是初创公司和个人开发者避免高昂账单的绝佳方案。它特别适合注重隐私、追求完全掌控权以及希望快速降低运营开支的移动开发团队。Appwrite 填补了 Firebase 的昂贵计费与 Supabase 的高复杂度之间的空白,找到了一个完美的平衡点。作为进入 2026 年的有力后端选项,其实际部署过程仅需几分钟,非常值得开发者尝试。视频最后鼓励观众查看说明栏的文档链接,并订阅频道以获取更多开源工具的资讯。

Community Posts

View all posts