开局零元,如何免费运营应用程序?
全文共2058字,预计学习时长6分钟
来源:Pexels
使用一个免费的基础架构堆栈是一种怎样的体验?小芯不禁感到一丝好奇。
免费基础架构堆栈对个人爱好项目或刚刚起步的业务无疑是非常有益。那么,该如何建设呢?
本文将分享能将基础架构成本保持在最低水平的服务和技术。
作为一个示例应用程序,小芯想到了一个易操作的平台,该平台主要需要一个静态网站、一些服务器端业务逻辑和一个数据库。
当然,这个堆栈并不总是完全免费的。如果用量增加,成本也会增加。关键在于是否能在一开始近乎免费地组装一个堆栈。
网站托管
考虑使用网站托管时,有几个不错的选择。
小芯最喜欢的是Zeit和Netlify.它们功能非常相似:持续部署、每月大约100GB的带宽以及内置的CDN(内容分发网络)。另一个好处是它们都提供无服务器函数选项(详见下节)。它减少了整个堆栈集成所需的服务数量。
像Gatsby这样的静态网站生成器非常适合供应商使用。它还可以适配无头CMS(内容管理系统)。这样,不懂技术操作的人也可以编辑网站了。
后端
来源:Pexels
为了让大部分业务逻辑远离前端,就需要一个后端。后端的使用场景是验证或注册新用户。
由于目标是将托管成本保持在最低水平,托管传统的后端服务是不可行的。
解决方案是使用无服务器函数。这意味着它不会完全占用服务器,而只会在函数需要运行时使用服务器容量。一个示例函数可以提供一个登录端点,以此检查用户是否输入了正确凭证。大多数供应商在使用这些函数时都有免版税层。
下面是可提供上述功能的函数:
Netlify函数
Netlify提供广泛的免费层。在该免费层,每个月可至多有12.5万个请求和100小时的运行时间。
使用Netlify作为网站主机时,它具有优良的集成性。这些函数可以放在根项目中,由Netlify选取。
Zeit函数
Zeit也提供无服务器函数。免费层中,使用1GB内存时,请求数量没有限制,但每月运行时间为100小时。
Zeit对执行时间有额外的限制。函数只能运行10秒钟。
对于大多数用例来说,这应该足够了,但也有待考量。
AWS(亚马逊网络服务)函数
亚马逊包含所有供应商中最能免版税的层级。它允许每月提出100万个免费请求。
需要注意的是,注册AWS需要信用卡。本文中的其他供应商或服务则不需要。
数据库
平台需要存储数据。例如,处理用户管理。
有免费层级的托管数据库并不多,它们都是NoSQL(非关系型数据库)。下面这些是小芯觉得最有趣的托管数据库。
FaunaDB
这是一个有趣的新数据库播放器。如网站上看到的,它将自己标记为“关系NoSQL数据库”,具有相当广泛的免费层级:
· 5GB存储空间
· 每月3M读取操作
· 每月150万次写入操作
· 每月1.5 GB的数据传输量
FaunaDB提供了一个GraphQL API与数据库交互。此外,值得一提的是,它使与Netlify和Zeit能够轻松集成。
MongoDB Atlas云数据库
MongoDB的官方托管平台有一个免费层。在这一层,用户将获得512MB的实例。注意,这个实例不是在每个地区都可用,所以必须检查它在所在地区是否可用。
Firebase
Firebase是谷歌的实时数据库。其免费层与FaunaDB十分类似:
· 每月5GB存储
· 每月10GB下载限制
来源:Pexels
CMS(内容管理系统)
针对平台解决方案,人们希望CMS带来便捷创建、编辑和管理网页信息的体验。
无头CMS能很好的集成到现有堆栈中。据小芯了解,有几个免费的选择。
Sanity.io
它是一款灵活的CMS,其中数据模型用代码定义。与数据交互的界面也是可定制的。它在免费层有很宽的限制:
· 每月10K的API请求
· 10GB宽带
· 2个数据集
· 3个用户
Prismic
Prismic类似于Sanity.io,但在免费层有一处不同:
· 只有一个用户
· “合理使用”的使用政策
问题在于Prismic对合理使用的理解,但如果用户刚开始使用,它应该能够满足需求。
概览
简化架构概述
这些部分是如何拼在一起的呢?上图中,是不同技术和供应商的简化架构概述。
· 静态站点生成器将从内容管理系统中为其公共页面提取数据。
· 静态站点生成器还可以为业务逻辑调用无服务器函数,如用户验证。
· 只有无服务器函数可以访问数据库。这样,无需将凭证保存在静态站点生成器中。
来源:Pexels
希望本文能助你“创建近乎免费的架构堆栈”一臂之力。
零元起步,项目照常走~
留言 点赞 关注
我们一起分享AI学习与发展的干货
欢迎关注全平台AI垂类自媒体 “读芯术”
(添加小编微信:dxsxbb,加入读者圈,一起讨论最新鲜的人工智能科技哦~)