在今年三月份的Facebook F8 開發者大會中,Facebook旗下的Parse發表了該平臺對於物聯網的最新支援。
在臺灣,我們比較少聽到開發者在討論Parse,究竟Parse是什麼?
它的新支援和物聯網之間的關係又是什麼?
這一回,就讓我們從開發者的角度切入來討論。
Parse興起,推動雲端服務的新類型
Parse最早是由YCombinator 所育成出來的,在2013年被Facebook所併購。Parse本身是一個在雲端的服務,但是,最值得一提的,就是它不是落在我們傳統上對雲端服務的分類中,即不是IaaS、PaaS、也不是Saas,而是被稱為所謂的BaaS(Back end as a Service)。也就是說,在雲端上所提供的服務是所謂的「後端(backend)」。
那麼,所謂的「後端」提供了什麼樣的服務?為什麼需要在雲端上的「後端」服務呢?
就以Parse為例吧,Parse主要提供了:
(1)雲端資料的儲存
(2)雲端資料的分析
(3)本地端資料的儲存
(4)訊息的推播
(5)簡單的社交服務
(6)在雲端平臺上執行客戶端的程式碼
(7)後臺操作
(8)即時監看後臺的日誌、資料,以及訊息推播的狀態。
從Parse的作用來看,就不難發現它將應用程式的邏輯,以「前端」、「後端」的概念拆解,而將其中「後端」的部份移到雲端平臺之上。
拆解之後的應用程式,其「前端」仍舊在客戶端上執行,但「後端」則運行在雲端平臺之上,二者透過網路相溝通。
因此,各種應用程式在後端的共通需求,就因此被萃取、整理出來,變成雲端上的服務,可以提供各應用程式的開發者來選擇運用。
這麼一來,對於這些共通的部份,開發者就毋需再自行重新打造,而可以直接使用雲端上現成的服務進行操作。
另一方面,由於雲端平臺的高度規模可擴充性,使得即使所需的資料規模、推播的訊息規模成長,對於應用程式開發者而言,也不需要額外花費心思於規模可擴充性上,只需要專心處理應用程式本身的邏輯即可。
BaaS與行動App的應用有相當緊密的關聯
不過,除了上述的原因之外,還有一點很重要,就是之所以會有BaaS,和行動裝置App 的開發,息息相關。
對於行動App 來說,有不少對於後端的需求是共通的,但App 的開發團隊有小型化的趨勢,而且不見得團隊中有擅長後端的開發者,為了更便利地滿足這些App開發團隊的需求,才會有諸多BaaS服務應運而生。
絕大多數的行動裝置都可以拆解成前端及後端,一部份是因為行動裝置資源受限,無法提供這後端操作,一部份也是因為後端的工作需要提供客戶端間統整的資料,所以才會將需要資源及共通資料的部份移至後端。
或許沒有採用BaaS的行動App,其後端系統是由團隊自身開發,並且部署於自家的伺服器或是IaaS、PaaS的雲端服務之上。但如此一來,仍然需要後端的開發投入。而BaaS的目標,就是放在簡化其對後端開發的投入。
除了Facebook收購了Parse之外,網路世界的另一個巨頭Google,也收購了Firebase這個BaaS公司,相關的事件也說明了,這個類型的服務,已經漸漸展現出其重要性。
像Parse的客戶甚至包括了網路硬體大廠Cisco,由此便可見在App開發的世界裡,分工愈來愈細緻。當後端這些關於資料存取、訊息推播等機制,被統整在雲端之上時,App的開發者可以更專注在他們App的應用領域,加快App的開發及改進的進程。
BaaS也影響當前物聯網應用的發展
雖然今年三月關於Parse的新聞,是以物聯網為主,但是Parse在這之前,已經推出了各種行動裝置作業系統上的開發工具,包括Android、iOS、以及Windows Phone 8。
因為此類的BaaS,原先本來就是瞄準行動App開發的市場而來的,也因此BaaS才會同時被稱為MBaaS(M即Mobile,行動的意思)。
但是,不只是行動裝置App的開發,需要後端相互搭配,同樣地,對於物聯網裝置應用的開發,也需要後端環境的服務。
就以現在許多團隊都在開發的家庭自動化應用來說,溫度、濕度等資訊的記錄及查詢、門窗開關的警示推播、……等等,都會需要有一個場所來記錄這些資訊,以及有個推播的機制來通知用戶。這些都是物聯網裝置的「後端」需求。
而且,對於物聯網裝置來說,相較於行動裝置,往往更無計算資源去處理這些工作。
現今物聯網的大架構已經很清楚了,物聯網裝置本身可以連網,或是透過某個特定的閘道裝置來連網,在雲端上,有著可供裝置存取的資源及服務。
另外,裝置與透過App操作的使用者進行溝通,方式有很多,像是裝置推播警示訊息至App,或是使用者透過App來控制物聯網裝置,而App與裝置之間的溝通,也是透過雲端上的服務來達成。
在這個架構底下,雲端上可能匯集大量來自於App及物聯網裝置的資料,進而衍生出大數據的應用可能性。
就這樣,一下子把「大數據」、「物聯網」、以及「雲端計算」幾個流行語給串接在一起。但是,這個基於流行語的架構卻是一個確切可行的方向。像Parse這樣子的BaaS服務,運行於雲端,對物聯網裝置來說,可以是一個匯整資料的所在,而透過Parse的機制,也可以針對其中的資料做查詢或是進一步的處理。
因此,Parse從行動裝置的後端服務,走向將物聯網裝置給包括進來,是一個十分合理的方向,因為這麼一來,不僅可以成為行動裝置的後端服務平臺,也可以成為物聯網裝置的後端服務平臺,更重要的是,可以將二者給銜接起來,因為在物聯網的世界裡,物聯網裝置最終還是得和App相接,才能更容易為使用者所用。
舉例來說,Parse甫推出的物聯網SDK,其目的,便在於能夠讓一些重要的物聯網裝置,更便於取用後端服務。
Facebook力推Parse,是為了讓更多活動發生在自家服務上
Facebook最近的戰略其實很清楚,即在建立一個網路世界的國中之國,它本身盡可能地提供許多服務,將使用者更凝聚於Facebook平臺之上、透過Facebook進行盡可能多的活動。
若有更多的物聯網裝置基於Parse平臺,意謂著日後Facebook有機會從人與人的服務,跨入人與物,以及物與物的服務領域裡。
目前Parse為其用戶提供免費的一定額度,或許有機會吸引更多的開發者使用其平臺。日後,在物聯網的應用開發裡,或許Parse或類似的BaaS服務,將扮演重要的角色。
專欄作者
熱門新聞
2024-12-22
2024-12-20
2024-12-22
2024-12-20