为什么说无服务器架构是为移动应用开发而生 - 开源中国社区
为什么说无服务器架构是为移动应用开发而生
王练 2017年08月15日

为什么说无服务器架构是为移动应用开发而生

王练 王练 发布于2017年08月15日 收藏 15

有免费的MySQL,为什么还要买? >>>  

Realm 的 CEO 兼联合创始人 Alexander Stigsen 发布了一篇文章,描述了无服务器架构 Serverless 在移动开发领域的重要作用。他认为,当抽离过时的服务器栈时,移动开发会变得更简单。

iPhone 推出已十年,但对于开发者来说,感觉似乎还停留在2007年。如果你正在从事移动开发相关的工作,将面对一个令人沮丧的现实:你的移动开发经验在很大程度上是由至今还存在的 Web 技术决定的。

所以当我们谈论构建移动应用时,真正说的其实是构建与后端服务器发生交互的移动应用。而后端服务器是为桌面应用交互而设计的。虽然技术发展已不再局限于大屏幕和有线连接,但移动开发人员仍不得不接受无休止的妥协,以肩负起开发需求的经验。

要开发出有用的服务器端代码,需要具备大量新兴领域的知识和技能。当开发者构建一个应用并将其连接到服务器时,数据并不会就此神奇地开始流畅地供你使用。在发出第一个请求之前,你必须部署和管理这些服务器。DevOps 让这个过程变得更加简单,但也需要耗费大量时间。

接下来,你的服务器必须从请求中获取的任意格式(可能是 JSON )对数据进行序列化,然后将其存储在SQL 数据库中,然后必须对该数据执行业务逻辑,它将以服务器端语言完成所有这些操作。

这么来看,一个简单的移动应用就需要一个复杂的服务器端团队。而且大多数工作只是尝试让堆栈 - 移动和服务器的双方进行交互而已。

简化服务器

不过,我们可以有更好的选择——无服务器开发。无服务器架构旨在抽离所有与基础设施和服务器框架相关的细节,你只需要将注意力集中在于:编写能够满足需要的代码,以及随数据更改而反应的代码。服务器依然存在,只是你不需要再去做任何与部署和管理服务器相关的工作。

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

专注于应用

最终,你会写出很少的移动代码。你不需要在移动应用中编写网络和序列化代码,只需负责你创建的模型和数据。因为该平台可以处理同步,所以你可以专注于实际让应用变得更好的代码,而不仅仅是为了让应用正常运行的代码。

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

移动应用发展迅速,诸如实时协作、双向数据同步、端点计算和离线优先这样的功能过去昂贵且难以构建。但通过采用无服务器,移动优先的方法,开发者就可以利用平台所提供的功能来构建下一代应用。

编译自:InfoWorld

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:为什么说无服务器架构是为移动应用开发而生
分享
评论(24)
精彩评论
4
老子居然没看懂~baas?
2
这不就是说 BAAS 吗?
2
这里说的无服务器应该指的是开发者不需要自己部署服务器了,而是在一个平台(不是服务器吗????)上写几个函数,就可以了。平台上提供了你需要的一切,数据库,内存存储等等。为什么不直接点,在阿里云购买一个服务器,功能不是更强大。
1
无固定IP地址的服务器,因为手机走到哪里,IP就一直变化。感觉只要解决DNS更新问题就可以了,比如实时DNS更新系统。注:没看文章内容。
1
现阶段做玩具或者创业初期的启动可以这么干,中大型项目就是作死
最新评论
0
看不懂,看似很高深
0
应该是有类似的服务吧,不过不是很被推荐,基于docker,轻松实现了服务端的部署,有服务商将代码完全服务化,比如用户模块,IM模块等,不过应该用的人不多,好像在开发中并不能达到省心的地步,方法道不错,前景并不大。而且按此理论,移动应用也能通过页面拖拽实现模块拼接,然后由平台打包下载,完全可以取代移动应用开发了,小程序,APK,APP不都有相应的平台提供模块化拼装吗?我觉得可能适合产品经理用。。。。
0
不明觉厉
0
基于MongoDB的BaaS
2
这不就是说 BAAS 吗?
2
这里说的无服务器应该指的是开发者不需要自己部署服务器了,而是在一个平台(不是服务器吗????)上写几个函数,就可以了。平台上提供了你需要的一切,数据库,内存存储等等。为什么不直接点,在阿里云购买一个服务器,功能不是更强大。
0
那么平台谁来做?有这么高度定制的平台?平台知道你要怎么处理业务逻辑?
0
业务逻辑前置是大势所趋
0
如果是一半的文章,麻烦小编说明下,这么多人看不懂显然 作者、翻译、小编以及这么多读者肯定有一方脑子有问题。
0

引用来自“mjssw”的评论

大哥,你是不是serverlet打错了?
你打错了
1
无固定IP地址的服务器,因为手机走到哪里,IP就一直变化。感觉只要解决DNS更新问题就可以了,比如实时DNS更新系统。注:没看文章内容。
0
这文章的意思是,无服务器架构还是用服务器吧。
0
我是不是脑袋不好用了,以为自己要失业,仔细看了好几遍,竟然没看懂,我草~
0
说了什么
0

引用来自“chencliff”的评论

无服务器,后端逻辑怎么弄?我要登录找哪个验证去?我也没看懂
用云提供的lambda服务,请求按次计费
0
很多年前就有人吹serverless,然后这么多年还是没有任何实质性的进展,也没有学术上的突破,所以我觉得鼓吹Serverless完全无厘头的东西
0
大哥,你是不是serverlet打错了?
0
无服务器,后端逻辑怎么弄?我要登录找哪个验证去?我也没看懂
1
现阶段做玩具或者创业初期的启动可以这么干,中大型项目就是作死
0
弱弱问句啥叫无服务器架构?
顶部