自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

無服務(wù)和微服務(wù)架構(gòu),誰是業(yè)務(wù)計(jì)算的未來?

譯文
開發(fā) 前端
本文將和您探討無服務(wù)器計(jì)算的基本工作原理,并將其與微服務(wù)架構(gòu)進(jìn)行了對(duì)比,以方便您在實(shí)際應(yīng)用中做出選擇。

【51CTO.com快譯】無服務(wù)器計(jì)算(通常簡(jiǎn)稱為無服務(wù)器)是一種極具潛力的云端技術(shù)模型。近年來,它經(jīng)常出現(xiàn)在應(yīng)用程序的開發(fā),以及軟件體系架構(gòu)中。為了讓無服務(wù)器框架發(fā)揮巨大的潛力,諸如Google、Microsoft、IBM和Amazon之類的軟件巨頭,已經(jīng)開始向客戶提供了能夠?qū)⒈镜厮羞\(yùn)營業(yè)務(wù),遷移并托管到他們的旗艦無服務(wù)器平臺(tái)(如:AWS Lambda和Azure Functions)上的方法與工具。

簡(jiǎn)而言之,無服務(wù)器架構(gòu)是一種事件和請(qǐng)求驅(qū)動(dòng)的技術(shù)解決方案。它允許應(yīng)用開發(fā)人員在云端創(chuàng)建可操作的工作環(huán)境。該環(huán)境提供了實(shí)現(xiàn)編碼流能夠順暢運(yùn)行的所有必要的計(jì)算資源。該框架在時(shí)間緊、且任務(wù)相當(dāng)耗費(fèi)資源的情況下,顯得非常實(shí)用。

此外,在選擇無服務(wù)器服務(wù),以簡(jiǎn)化應(yīng)用開發(fā)流程的同時(shí),您也可以用它來大幅改善諸如DevOps和敏捷實(shí)踐等其他業(yè)務(wù)優(yōu)化計(jì)劃。

無服務(wù)器和微服務(wù)模型的區(qū)別?

總的說來,這兩種架構(gòu)的相似之處在于:它們都能夠最大程度地降低運(yùn)營的成本,縮短應(yīng)用部署的周期,滿足不斷變化的開發(fā)需求,以及優(yōu)化那些對(duì)于時(shí)間和資源敏感的日常任務(wù)。那么,微服務(wù)和無服務(wù)器模型之間的不同之處在哪里呢?

首先,微服務(wù)屬于一種小型的SOA(面向服務(wù)的體系架構(gòu))技術(shù)解決方案。它可以為程序員提供對(duì)于托管在云服務(wù)器上相關(guān)庫的完全訪問權(quán)限,并允許他們部署各種功能模塊,以及諸如JSON、RESTful、AMQP、SOAP等多種協(xié)議和API。

通常,微服務(wù)體系架構(gòu)是通過諸如Docker之類的可執(zhí)行程序包,來實(shí)現(xiàn)數(shù)據(jù)的容器化,并在開發(fā)人員訪問某些給定的API時(shí),按需解壓縮所有的必要數(shù)據(jù)。因此,多個(gè)微服務(wù)模型可以確保運(yùn)維人員通過在云平臺(tái)上的各項(xiàng)操作,來持續(xù)部署應(yīng)用程序。

不過,由于企業(yè)配置的那些閑置的微服務(wù)也會(huì)處于活動(dòng)狀態(tài),因此,用戶必須持續(xù)按照每個(gè)服務(wù)每天的標(biāo)準(zhǔn)為占用的容量和資源支付費(fèi)用。顯然這會(huì)讓企業(yè)深感微服務(wù)架構(gòu)價(jià)格不菲。

而無服務(wù)器的各項(xiàng)功能函數(shù)僅在滿足了既定事件時(shí),才會(huì)被觸發(fā)。而在完成操作后,功能函數(shù)將根據(jù)用戶輸入的命令,執(zhí)行一系列操作。也就是說,無服務(wù)器平臺(tái)運(yùn)用一組預(yù)處理的算法和規(guī)則,來處理計(jì)算,并得出相應(yīng)的結(jié)果??梢?,這會(huì)讓應(yīng)用程序開發(fā)人員覺得無服務(wù)器架構(gòu)更有吸引力。畢竟,它是按需提供的云端執(zhí)行環(huán)境的。

通過對(duì)比,我們不難發(fā)現(xiàn),微服務(wù)更適合于電子商務(wù)網(wǎng)站等用例,它們需要優(yōu)先考慮各種大型數(shù)據(jù)集的容器化。在優(yōu)化開發(fā)成本和時(shí)間方面,無服務(wù)器則展示了其巨大的潛力。

此外,如果您的業(yè)務(wù)流程是基于事件的,而且您不想一直運(yùn)行某些操作任務(wù)的話,那么您最好選擇便是無服務(wù)器架構(gòu)。它對(duì)于那些時(shí)常觸發(fā)各類警報(bào)與通知的物聯(lián)網(wǎng)驅(qū)動(dòng)型應(yīng)用來說尤為適用。下面,我們將進(jìn)一步討論無服務(wù)器的工作原理和各種特性。

無服務(wù)器的工作原理

作為由預(yù)配置事件驅(qū)動(dòng)的開發(fā)模型,無服務(wù)器利用多種基于云端的分布式服務(wù),來簡(jiǎn)化軟件部署的工作流。通常,它能夠提供如下兩種互補(bǔ)的服務(wù)模型:

  • 后端即服務(wù)(Backend as a Service,BaaS)
  • 服務(wù)即服務(wù)(Function as a Service,F(xiàn)aaS)

其中,BaaS就是利用第三方多租戶架構(gòu)的功能,來增強(qiáng)用戶應(yīng)用的部署和交付效率。此類通用功能通常是以SDK或API網(wǎng)關(guān)的形式被提供出來,并且所有的必需操作都僅能在云中執(zhí)行。因此,它為傳統(tǒng)的本地部署架構(gòu)有效地提供了代碼數(shù)據(jù)。同時(shí),此方案享有真正快速的開發(fā)周期。它能夠?qū)⑷寇浖突A(chǔ)架構(gòu)的維護(hù)責(zé)任,移交給BaaS的服務(wù)提供商。此外,應(yīng)用開發(fā)人員還可以隨時(shí)擴(kuò)展其部署的流程。

而諸如AWS Lambda之類的FaaS平臺(tái)則屬于事件驅(qū)動(dòng)開發(fā)架構(gòu)的類型。它可以通過按使用付費(fèi)的模型方式,提供強(qiáng)大的托管服務(wù),而且僅在預(yù)定的功能或事件被滿足的情況下被觸發(fā)。因此,此類激活FaaS功能的常見觸發(fā)器包括:各種預(yù)定的事件、文件的上載、對(duì)存儲(chǔ)庫新的提交、電子郵件、數(shù)據(jù)庫的更新、以及HTTP API的調(diào)用等。

無服務(wù)器通過將BaaS和FaaS模型相結(jié)合,幫助開發(fā)人員處理復(fù)雜的資源密集型任務(wù),其中包括:各種托管數(shù)據(jù)、基礎(chǔ)架構(gòu)、以及業(yè)務(wù)邏輯元素等廣泛的功能。

使用無服務(wù)器的好處

  • 可設(shè)計(jì)出自動(dòng)擴(kuò)展的服務(wù)。通過自帶的靈活性,無服務(wù)器方案可以按需擴(kuò)展其計(jì)算資源和功能。相反,在訪問高峰時(shí)段結(jié)束后,其支撐的云端工作環(huán)境能夠針對(duì)較少的負(fù)載處理需求,進(jìn)行自動(dòng)收縮。
  • 改進(jìn)了部署。借助無服務(wù)器功能,程序員對(duì)于應(yīng)用的開發(fā)和部署,會(huì)變得非常容易和便捷。他們不再需要考慮諸如:基礎(chǔ)架構(gòu)的維護(hù)、以及數(shù)據(jù)及時(shí)同步之類的附加方面??梢?,無服務(wù)器架構(gòu)的靈活性,能夠使得大多數(shù)工作流程得以順利地自動(dòng)化推進(jìn)。
  • 穩(wěn)定性。無服務(wù)器架構(gòu)會(huì)將企業(yè)的大部分?jǐn)?shù)據(jù)和基礎(chǔ)架構(gòu)管理職責(zé)轉(zhuǎn)移給了云服務(wù)提供商。它釋放了您團(tuán)隊(duì)的大量工作時(shí)間,使您不必像過去在傳統(tǒng)的本地軟件平臺(tái)上那樣,去關(guān)注基礎(chǔ)設(shè)施的簡(jiǎn)化,編排和分配代碼數(shù)據(jù),以及處理停機(jī)問題。
  • 成本效益。實(shí)際上,成本最小化才是真正能夠使無服務(wù)器,在眾多基于云端的解決方案中脫穎而出的原因。正如我們?cè)谇懊姹容^過的,按使用付費(fèi)的方法,有助于企業(yè)避免產(chǎn)生不必要的應(yīng)用開發(fā)和部署費(fèi)用。只有在那些預(yù)先設(shè)定的事件引發(fā)了云端相應(yīng)的操作時(shí),企業(yè)才需要為服務(wù)器的運(yùn)行時(shí)間付費(fèi)。
  • 減少延遲。由于企業(yè)的所有數(shù)據(jù)資產(chǎn),都被托管在基于云端的服務(wù)器上,因此無服務(wù)器能夠讓企業(yè)將資源分配到,最接近最終用戶的那臺(tái)服務(wù)器上。據(jù)此,數(shù)據(jù)的順暢連接和互操作性,不但得到了保障,而且大幅減少了那些時(shí)間緊迫的故障和系統(tǒng)停機(jī)時(shí)間。

綜上所述,您是不是會(huì)認(rèn)為無服務(wù)架構(gòu)就絕對(duì)比位服務(wù)架構(gòu)好呢?不一定。在實(shí)踐中,您還是需要根據(jù)自己手頭業(yè)務(wù)的實(shí)際需求,通過綜合比較,再做出恰當(dāng)?shù)倪x擇。

原文標(biāo)題:Serverless vs. Microservices Architecture: Is This the Future of Business Computing?,作者:Dana Kozubska

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2024-01-19 11:57:42

2023-08-27 15:20:58

Serverless架構(gòu)開發(fā)

2017-07-06 09:06:57

無服務(wù)計(jì)算PaaS

2024-01-17 18:16:08

微服務(wù)無服務(wù)器架構(gòu)

2019-03-08 10:26:29

無服務(wù)器云計(jì)算德勤

2023-07-28 09:23:24

微服務(wù)架構(gòu)

2023-09-02 20:51:09

微服務(wù)業(yè)務(wù)服務(wù)

2023-10-26 19:15:40

2024-07-04 12:30:04

2023-07-05 08:00:45

架構(gòu)

2023-07-03 09:49:35

API服務(wù)接口

2017-07-04 14:57:40

微服務(wù)paasdocker

2018-01-05 14:08:08

無服務(wù)器化云計(jì)算云遷移

2018-10-19 10:49:53

云原生架構(gòu)無服務(wù)器

2023-07-27 14:03:51

微服務(wù)

2023-09-12 22:58:51

分布式架構(gòu)微服務(wù)

2021-08-31 11:29:55

無服務(wù)器服務(wù)器云計(jì)算

2019-10-16 08:41:46

微服務(wù)架構(gòu)Nginx

2023-08-31 17:13:01

架構(gòu)軟件開發(fā)

2022-08-14 07:04:44

微服務(wù)架構(gòu)設(shè)計(jì)模式
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)