【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

无服务器架构是移动开发者的福音?

  • 2017-08-13
  • 本文字数:1211 字

    阅读完需:约 4 分钟

realm.io 的 CEO 兼联合创始人 Alexander Stigsen 简述了无服务器架构在移动开发领域的重要作用,将服务器栈抽离出去之后,移动开发会变得极其简单。

从第一部 iPhone 发布到现在已经有十年的时间了,但对于开发者来说,似乎还停留在 2007 年。如果你正在做移动开发相关的工作,就不得不面对一个残酷的事实:你的移动开发体验在很大程度上是由 Web 技术决定的。

我们所说的移动应用开发,一般是指构建与后端服务器发生交互的移动应用,而后端服务器是为桌面应用而设计的。随着小屏幕和无线应用的崛起,移动开发者开始肩负起交付良好用户体验的重任。

要开发出优秀的服务器端代码需要具备很多领域的知识和技能。开发者构建了一个移动应用,并把它连接到服务器上,但数据并不会就此源源不断地流进来。在开始接收第一个请求之前,你需要部署和管理这些服务器。DevOps 让这个过程变得更加简单,但这着实需要耗费大量的时间。

接下来,服务器需要序列化各种请求数据,把它们保存到数据库里,然后基于这些数据执行业务逻辑,整个过程都是通过服务器端的编程语言来处理的。

不过,我们可以有更好的选择——无服务器开发。无服务器架构抽离了所有与基础设施和服务器框架相关的细节,你只需要编写代码实现你想要的业务逻辑,并在数据发生变更的时候进行响应。服务器依然存在,只是你不需要再去做任何与部署和管理服务器相关的工作。

那么,无服务开发与一般的服务器端开发有什么区别?作为移动开发者,你不需要再去掌握服务器端的开发知识。你不需要关心如何让服务器运行起来,也不需要关心如何让数据流向服务器。你也不需要 DevOps,不需要去学习各种服务器端技术,如 Postgre、Redis,等。

你不需要去学习一门完整的编程语言或框架(如 Django 或 Rails),你只需要写一些 JavaScript 代码,剩下的事情由平台来帮你完成。平台会按照你所期望的格式来决定数据的流向,不需要中间件处理和 URL 路由。你可以直接处理流入的数据,而不需要暴露 REST 端点。

另一方面,移动应用端的代码量也大幅减少了。你不需要在应用里编写代码来处理网络和序列化问题,只要负责处理模型和数据。因为平台为你处理了大部分底层的问题,你可以专注在应用代码上,从而开发出更好的应用。

在采用了无服务器架构之后,你不再需要专门的 DevOps 和服务器团队。你不再需要去了解服务器端框架——可能只要懂一点 JavaScript 就够了。你甚至不需要编写与服务器端通信的代码,因为平台首先会帮你们把这些事情做掉。

移动应用的变化日新月异,有一些特性构建起来相当困难,比如协作、双向数据同步、端点计算和“Offline First”。而通过采用服务器架构,开发者可以利用平台所提供的功能来构建下一代应用。

查看英文原文 Why serverless was made for mobile development


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-08-13 19:002059
用户头像

发布了 322 篇内容, 共 133.7 次阅读, 收获喜欢 142 次。

关注

评论

发布
暂无评论
发现更多内容

中国SaaS的终局:神仙打架,小鬼遭殃

ToB行业头条

在有道 | L同学:一位十五年有道人的成长故事

有道技术团队

分享 访谈录 阅读 网易有道

征服耶鲁教授的算法大神程序媛,是如何践行“以人为本”开发智慧社区大脑的?

华为云开发者联盟

算法 音视频 智慧社区 华为智慧园区数字平台 数字平台

专访中寰卫星导航项目管理部负责人卜钢:如何演绎人生之路

打工人!

采访 调查采访能力考核

Python OpenCV 图像2D直方图,取经之旅第 27 天

梦想橡皮擦

Python OpenCV 4月日更

Python基础之:struct和格式化字符

程序那些事

Python 数据分析 程序那些事

磁盘快照服务USnap:公有云连续数据保护(CDP)系统升级改造实践

UCloud技术

Markdown 文档可折叠化展示

耳东@Erdong

4月日更

合约量化交易APP开发|合约量化交易系统软件开发

系统开发

一周信创舆情观察(4.5~4.11)

统小信uos

const与指针交集的那些事

Bob

c++ 编程语言 4月日更

借助 Serverless 容器服务Cube,筷子科技轻松打造 10 万+ 爆款短视频

UCloud技术

GraphX图计算组件最短路算法实战

小舰

4月日更

Java 常见 bean mapper 的性能及原理分析

Java小咖秀

Java bean Copier

合约跟单系统开发|合约跟单APP软件开发

安于现状的人,不值得同情

小天同学

深度思考 个人感悟 4月日更 突破现状

流计算:流式处理框架

正向成长

流式计算框架

Golang Slice 数组和切片

escray

学习 极客时间 Go 语言 4月日更

接口的幂等性怎么设计?

xcbeyond

设计 幂等性 4月日更

LeetCode题解:17. 电话号码的字母组合,回溯,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

维度数据模型建模过程(Kimball)

大数据技术指南

数据仓库 维度建模 4月日更

使用Python映射,过滤和缩减函数:所有您需要知道的

华为云开发者联盟

Python 函数 映射 内置函数

聪明人的训练(十六)

Changing Lin

4月日更

Java-技术专题-Stream.foreach和foreach

洛神灬殇

Java stream collection

建议收藏!看完全面掌握,最详细的Redis总结(2021最新版)

民工哥

运维 后端 redis cluster NoSQL数据库

车行易携手睿象云:告警管理体系全升级

睿象云

构建智慧金融新引擎|DataPipeline与巨杉数据库完成产品兼容互认证

DataPipeline数见科技

【有奖征文】WEB前端大作战,走在技术最前端!

华为云开发者联盟

node.js Vue 大前端 Web Web框架

拍乐云入选 2021 爱分析·产业数字化厂商全景报告

拍乐云Pano

RTC

很坑的Could not transfer artifact报错

01Running

maven Mac IDEA

计算机原理学习笔记 Day6

穿过生命散发芬芳

计算机原理 4月日更

无服务器架构是移动开发者的福音?_移动_Alexander Stigsen_InfoQ精选文章