為什么說無服務(wù)器架構(gòu)是為移動(dòng)應(yīng)用開發(fā)而生

責(zé)任編輯:editor007

2017-08-15 20:23:01

摘自:開源中國

摘要:ealm 的 CEO 兼聯(lián)合創(chuàng)始人 Alexander Stigsen 發(fā)布了一篇文章,描述了無服務(wù)器架構(gòu) Serverless 在移動(dòng)開發(fā)領(lǐng)域的重要作用。移動(dòng)應(yīng)用發(fā)展迅速,諸如實(shí)時(shí)協(xié)作、雙向數(shù)據(jù)同步、端點(diǎn)計(jì)算和離線優(yōu)先這樣的功能過去昂貴且難以構(gòu)建。

ealm 的 CEO 兼聯(lián)合創(chuàng)始人 Alexander Stigsen 發(fā)布了一篇文章,描述了無服務(wù)器架構(gòu) Serverless 在移動(dòng)開發(fā)領(lǐng)域的重要作用。他認(rèn)為,當(dāng)抽離過時(shí)的服務(wù)器棧時(shí),移動(dòng)開發(fā)會(huì)變得更簡單。

iPhone 推出已十年,但對于開發(fā)者來說,感覺似乎還停留在2007年。如果你正在從事移動(dòng)開發(fā)相關(guān)的工作,將面對一個(gè)令人沮喪的現(xiàn)實(shí):你的移動(dòng)開發(fā)經(jīng)驗(yàn)在很大程度上是由至今還存在的 Web 技術(shù)決定的。

所以當(dāng)我們談?wù)摌?gòu)建移動(dòng)應(yīng)用時(shí),真正說的其實(shí)是構(gòu)建與后端服務(wù)器發(fā)生交互的移動(dòng)應(yīng)用。而后端服務(wù)器是為桌面應(yīng)用交互而設(shè)計(jì)的。雖然技術(shù)發(fā)展已不再局限于大屏幕和有線連接,但移動(dòng)開發(fā)人員仍不得不接受無休止的妥協(xié),以肩負(fù)起開發(fā)需求的經(jīng)驗(yàn)。

要開發(fā)出有用的服務(wù)器端代碼,需要具備大量新興領(lǐng)域的知識和技能。當(dāng)開發(fā)者構(gòu)建一個(gè)應(yīng)用并將其連接到服務(wù)器時(shí),數(shù)據(jù)并不會(huì)就此神奇地開始流暢地供你使用。在發(fā)出第一個(gè)請求之前,你必須部署和管理這些服務(wù)器。DevOps 讓這個(gè)過程變得更加簡單,但也需要耗費(fèi)大量時(shí)間。

接下來,你的服務(wù)器必須從請求中獲取的任意格式(可能是 JSON )對數(shù)據(jù)進(jìn)行序列化,然后將其存儲(chǔ)在SQL 數(shù)據(jù)庫中,然后必須對該數(shù)據(jù)執(zhí)行業(yè)務(wù)邏輯,它將以服務(wù)器端語言完成所有這些操作。

這么來看,一個(gè)簡單的移動(dòng)應(yīng)用就需要一個(gè)復(fù)雜的服務(wù)器端團(tuán)隊(duì)。而且大多數(shù)工作只是嘗試讓堆棧 - 移動(dòng)和服務(wù)器的雙方進(jìn)行交互而已。

簡化服務(wù)器

不過,我們可以有更好的選擇——無服務(wù)器開發(fā)。無服務(wù)器架構(gòu)旨在抽離所有與基礎(chǔ)設(shè)施和服務(wù)器框架相關(guān)的細(xì)節(jié),你只需要將注意力集中在于:編寫能夠滿足需要的代碼,以及隨數(shù)據(jù)更改而反應(yīng)的代碼。服務(wù)器依然存在,只是你不需要再去做任何與部署和管理服務(wù)器相關(guān)的工作。

你不需要去學(xué)習(xí)一門完整的編程語言或框架(如 Django 或 Rails ),只需要寫一些 JavaScript 代碼,剩下的事情由平臺(tái)來幫你完成。平臺(tái)會(huì)按照你所期望的格式來決定數(shù)據(jù)的流向,不需要中間件處理和 URL 路由。只需直接使用傳入的數(shù)據(jù)即可完成 RESTful 端點(diǎn)和指向請求。

專注于應(yīng)用

最終,你會(huì)寫出很少的移動(dòng)代碼。你不需要在移動(dòng)應(yīng)用中編寫網(wǎng)絡(luò)和序列化代碼,只需負(fù)責(zé)你創(chuàng)建的模型和數(shù)據(jù)。因?yàn)樵撈脚_(tái)可以處理同步,所以你可以專注于實(shí)際讓應(yīng)用變得更好的代碼,而不僅僅是為了讓應(yīng)用正常運(yùn)行的代碼。

使用無服務(wù)器架構(gòu),你不再需要專門的 DevOps 和服務(wù)器團(tuán)隊(duì)。你不再需要去了解服務(wù)器端框架——可能只要懂一點(diǎn) JavaScript 就夠了。你甚至不需要編寫與服務(wù)器端通信的代碼,因?yàn)槠脚_(tái)首先會(huì)幫你們把這些事情做掉。

移動(dòng)應(yīng)用發(fā)展迅速,諸如實(shí)時(shí)協(xié)作、雙向數(shù)據(jù)同步、端點(diǎn)計(jì)算和離線優(yōu)先這樣的功能過去昂貴且難以構(gòu)建。但通過采用無服務(wù)器,移動(dòng)優(yōu)先的方法,開發(fā)者就可以利用平臺(tái)所提供的功能來構(gòu)建下一代應(yīng)用。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號