一般情况下,开发一个系统都需要前端和后端,仅靠一个人几乎无法胜任,需要考虑的特性和功能非常多,比如:
- 需要一个数据库来存放数据;
- 需要一个文件存储来存放各种文件,比如图片文件;
- 后端需要提供接口供前端调用;
- 重要组件需要考虑高可用、灾备、监控、弹性伸缩等等。
这对于没有后端基础的同学来说,简直是个噩梦!
那么是否存在一种新模式,可以让开发者只专注于业务呢?
目前解决这个问题最主流的方案就是 Serverless 架构,也就是所谓的无服务器计算。开发者只需要专注于代码质量和代码逻辑,不需要关心基础设施,也不需要关心后端服务,一切都由平台给你自动分配资源。
但这个平台从哪来?
毕竟 Serverless 只是一个架构和抽象理念,要想落地,还得实现一个真正的产品。
这样的产品其实国内有很多,也就是所谓的云开发服务。这一类服务将开发一个完整的应用需要用到的数据库、存储、CDN、后端函数、静态托管、用户登录等等功能全部集成到了一起,研发人员仅需要调用这些服务即可。
目前,云计算和整个互联网市场正逐渐从增量市场转向存量市场,营收和净利润才是 KPI ,在这个背景下,降低成本和提高利润至关重要。基于开源的云计算生态逐渐崛起,为市场提供了更具竞争力的选择,每家企业都可以摆脱供应商锁定自由到处运行,无需担心供应商的倒闭、产品下线或价格上涨等问题。最糟糕的情况下,企业甚至可以自行部署一套系统,并针对自身需求定制一些高级功能。
Laf 就是这样一个完全开源的云开发平台。
它提供了开箱即用的云函数,云数据库,对象存储等能力,是一个一站式开发平台,让你可以像写博客一样写代码。
与各大云厂商的云开发平台相比,Laf 也不遑多让,而且还有很多云厂商不具备的核心优势:
开源更开放:完全遵循 Apache License 2.0 开源协议,如果你看好 Laf 的开发模式,也可以自己部署一套,并对外提供商业化服务。
部署更简单:永久支持私有化部署,即使不使用云服务,也可以无缝迁移到自己的服务器上。
请求更迅速:Laf 的 runtime 机制让应用启动更快,且「无冷启动时间」,相对于传统的 Serverless 架构来说,响应更迅速。
开发更简单:依托于更好的一站式开发体验,开发者无需再关心应用部署、服务器运维等事情,登录即可开发,1 分钟上线应用。 除此之外,Laf 还提供了很多额外的优秀能力:
WebIDE:在线写代码,完善的类型提示、代码自动完成,像写博客一样写函数,随手发布上线。
WebSocket:应用支持长连接,业务无死角。
CLI 工具:能够进行本地开发,并同步至 Web 端,让你使用熟悉的工具进行开发,无需适应新的工具。
前端“直连”数据库:通过 laf-client-sdk + "访问策略" 可以在保证安全的情况下前端直接操作数据库,即使只开放最小的 Read 权限也可节省 30%~ 50% 的接口,让你在还原 UI 的同时顺手搞定逻辑。
社区生态:大量“野生”的开源贡献者,他们依托于开源的优势,为 Laf 贡献了许多优秀作品,例如 VS Code 本地开发插件和基于 ChatGPT 的自动生成代码插件。 还有个非常重要的一点就是 Laf 是运行在