Internet Develppment
      互聯(lián)網(wǎng)開發(fā)& 推廣服務(wù)提供商

      我們擅長商業(yè)策略與用戶體驗的完美結(jié)合。

      歡迎瀏覽我們的案例。

      首頁 > 新聞中心 > 新聞動態(tài) > 正文

      無服務(wù)器架構(gòu)下的 5 類設(shè)計模式

      發(fā)布時間:2022-05-24 09:47:38來源:知曉程序

        根據(jù) AWS 解決方案架構(gòu)師 Cassandra Bonner 在悉尼舉行的 APIdays 澳大利亞會議上的演講,Amazon Web Services 看到了適合采用無服務(wù)器架構(gòu)的五種主要產(chǎn)品和設(shè)計模式。Bonner 總結(jié)當(dāng)前無服務(wù)器技術(shù)的成熟度,顧問 Ken Fromm 最近在 A Cloud Guru 的 Medium 博客上寫道,無服務(wù)器架構(gòu)允許開發(fā)人員專注于管理他們的應(yīng)用程序和系統(tǒng)需要做的事情,而不是他們后端計算資源的物理算力、限制條件和復(fù)雜的基礎(chǔ)設(shè)施設(shè)置。這使得產(chǎn)品功能或業(yè)務(wù)模塊成為在無服務(wù)器環(huán)境中規(guī)模化拓展的基本單元,而不是更底層的計算資源。這意味著,軟件的計算任務(wù)往往是異步的、無狀態(tài)的和短暫的,或者正如 Fromm 所說:「任務(wù)處理本質(zhì)上變成了容器處理,容器在逐個任務(wù)的基礎(chǔ)上按需配置和刪除。」在 APIdays,Bonner 表示 AWS 團(tuán)隊認(rèn)為無服務(wù)器包含四個主要原則:簡單但可用的最小元素(即小的、可用的基礎(chǔ)組件)。

        隨使用量而彈性縮放(服務(wù)器代表用戶自動縮放)。

        用多少付費多少(客戶只需為使用服務(wù)的時間付費)。

        內(nèi)置可用性和容錯(即 NoOps)。

        在 APIdays 活動的早些時候,澳大利亞 Amazon Web Services 解決方案架構(gòu)高級經(jīng)理 Peter Stanski 曾表示,AWS 在澳大利亞和新西蘭市場(與世界大部分地區(qū)一樣)的傳統(tǒng)采用路徑在于中型企業(yè)。在過去的一兩年里,雖然初創(chuàng)公司通常從一開始就對無服務(wù)器服務(wù)「照單全收」,但擁有遺留系統(tǒng)的成熟企業(yè)通常會從開發(fā)和概念驗證測試來構(gòu)建新應(yīng)用程序,加入分析監(jiān)控功能,然后開始遷移一些他們的遺留系統(tǒng)上云,最終專注于將任務(wù)關(guān)鍵型應(yīng)用程序遷移到 AWS。

        AWS 的 Peter Stanski 在澳大利亞 APIdays 上發(fā)表演講。Stanski 說,今年,各種規(guī)模的企業(yè)從一開始就傾向于「全力投入」云計算。他們將著手遷移現(xiàn)有遺留技術(shù)棧,同時直接在云服務(wù)上構(gòu)建新的應(yīng)用程序。

        Bonner 描述了采用無服務(wù)器架構(gòu)的類似趨勢:雖然新應(yīng)用程序可能正在利用無服務(wù)器架構(gòu)開發(fā)和托管,但在大多數(shù)情況下,企業(yè)正在采用混合模式托管軟件,在無服務(wù)器環(huán)境中構(gòu)建新功能,然后融入并逐步脫離現(xiàn)有的企業(yè)軟件托管環(huán)境。「這就是我們看到很多客戶開始的方式,」Bonner 指出一個常見的例子:一家企業(yè)可能有一個管理圖像數(shù)據(jù)的現(xiàn)有工作流程,現(xiàn)在正在添加一個在無服務(wù)器中運行的圖像識別功能環(huán)境,然后將分類結(jié)果通過構(gòu)建數(shù)據(jù)管道傳回到現(xiàn)有的(遺留)企業(yè)軟件工作流中,該工作流可能就托管于用戶的云環(huán)境中。Bonner 在無服務(wù)器架構(gòu)下,為不同行業(yè)和用例定義了五種結(jié)合無服務(wù)器架構(gòu)的產(chǎn)品設(shè)計模式:事件驅(qū)動的數(shù)據(jù)處理。

        網(wǎng)絡(luò)應(yīng)用程序。

        移動和物聯(lián)網(wǎng)應(yīng)用程序。

        應(yīng)用生態(tài)系統(tǒng)。

        事件工作流。

        用例 #1:事件驅(qū)動的數(shù)據(jù)處理


      (事件驅(qū)動用例架構(gòu)圖)

        無服務(wù)器環(huán)境最常見的應(yīng)用之一是在事件發(fā)生后觸發(fā)某個數(shù)據(jù)操作。Bonner 給出了將圖像對象添加到 Amazon S3 存儲桶的示例。這可能會觸發(fā) lambda 函數(shù),例如,運行壓縮任務(wù),以便將圖像以標(biāo)準(zhǔn)尺寸格式重新歸檔到 S3 中。這種風(fēng)格的用例也非常適合傳統(tǒng)云和無服務(wù)器云混合使用的趨勢。在這種趨勢中,無服務(wù)器被用來在更廣泛的托管環(huán)境中執(zhí)行特定功能。

        用例 #2:無服務(wù)器 Web 應(yīng)用程序


      (Web 應(yīng)用程序用例的架構(gòu)圖)

        在無服務(wù)器 Web 應(yīng)用程序中,可能會組合運行進(jìn)程來確定用戶的上下文和用戶個性化信息,以提供滿足用戶請求的內(nèi)容和功能。例如,在此用例中,靜態(tài)內(nèi)容可能存儲在 S3 中,以便在瀏覽器中打開應(yīng)用程序時顯示。同時,通過應(yīng)用程序的 API 網(wǎng)關(guān)啟動處理以運行確定應(yīng)用程序用戶上下文的 Lambda 函數(shù)。然后使用通過 lambda 函數(shù)生成并作為動態(tài)數(shù)據(jù)存儲在 DynamoDB 中的更多動態(tài)內(nèi)容來增強靜態(tài)內(nèi)容。

        用例 #3:移動和物聯(lián)網(wǎng)應(yīng)用


      (移動應(yīng)用用例的架構(gòu)圖)

      與 Web 應(yīng)用程序用例類似,構(gòu)建在無服務(wù)器環(huán)境中的移動和物聯(lián)網(wǎng)應(yīng)用程序正在尋求根據(jù)用戶的上下文決定向用戶提供哪些內(nèi)容。無服務(wù)器身份驗證用于確保用戶(無論是人還是機器)獲得適當(dāng)授權(quán)以訪問信息或函數(shù)。然后 Lambda 執(zhí)行函數(shù)并與 DynamoDB 中的數(shù)據(jù)交互以滿足用戶的需求。

        用例 #4:無服務(wù)器應(yīng)用生態(tài)系統(tǒng)


      (應(yīng)用生態(tài)系統(tǒng)用例的架構(gòu)圖)

        在應(yīng)用程序生態(tài)系統(tǒng)中,應(yīng)用程序或工作流是在無服務(wù)器環(huán)境中創(chuàng)建的,并結(jié)合了 AWS 功能和產(chǎn)品以及第三方服務(wù)商 API。Bonner 舉了一個例子,有人告訴 Amazon Echo,他們正在做演示,然后語音數(shù)據(jù)觸發(fā) lambda 函數(shù),通過 Slack API 將該消息傳遞給遠(yuǎn)程團(tuán)隊。然后在無服務(wù)器環(huán)境中輪詢確定團(tuán)隊何時做出響應(yīng)并向 Echo 發(fā)送反饋信息。

        用例 #5:事件工作流


      (事件工作流用例的架構(gòu)圖)

        最近發(fā)布的 AWS Step Functions 現(xiàn)在為無服務(wù)器工作流程的可能性增加了更復(fù)雜的功能。可以在 Step Functions 中創(chuàng)建決策樹,然后與 Lambda 和 AWS 產(chǎn)品對齊以執(zhí)行工作流分支操作(盡管 Amazon Web Services 在澳大利亞突出顯示 Step Functions 令人困惑,因為它在澳大利亞尚不可用)。例如,使用發(fā)布/訂閱消息傳遞模型,可以通過狀態(tài)機可視化并擁有所有函數(shù)和分布式組件。用戶可以通過 Step Functions 和 lambdas 映射客戶入職流程、進(jìn)入 CRM、購物車訂購和訂單履行,并自動添加 AWS 工具以確保工作流程能夠完成。因此,雖然 Fromm 談到無服務(wù)器主要是異步、無狀態(tài)和短暫的,但一旦進(jìn)入更復(fù)雜的工作流和應(yīng)用程序,一些持久狀態(tài)和進(jìn)行同步調(diào)用的能力就會發(fā)揮作用。Step Functions 提供狀態(tài)機,以便 Lambda 函數(shù)可以為業(yè)務(wù)流程提供一定程度的即時狀態(tài),其中無服務(wù)器應(yīng)用程序可能需要結(jié)合同步和異步調(diào)用鏈。但是,像 iRobots 的 Ben Kehoe 這樣的無服務(wù)器高級用戶認(rèn)為,Step Functions 當(dāng)前的定價結(jié)構(gòu)過于苛刻,無法在無服務(wù)器環(huán)境的生產(chǎn)中使用它。此外,默認(rèn)節(jié)流限制表明其預(yù)期用途不包括彈性縮放,只包括瞬態(tài)事件調(diào)度。「我希望狀態(tài)即服務(wù)成為一種服務(wù)范式,可以用于無服務(wù)器架構(gòu)中 FaaS 所需的低級瞬態(tài)狀態(tài),無論是通過 Step Functions 還是其他服務(wù),」Kehoe 在 Step Functions 首次發(fā)布之后在自己博客中寫道。

        身份驗證的選擇

        在無服務(wù)器環(huán)境中,還可以為實施中的無服務(wù)器設(shè)計模式和用例選擇最適合的用戶身份驗證和身份管理工作流。身份驗證方法可能會根據(jù)來自一個組織的多個用戶是否需要具有不同權(quán)限角色的訪問權(quán)限、用戶是否主要是客戶或合作伙伴是否具有某些訪問權(quán)限而改變。Jim Tran 和 Justin Pirtle 于去年 11 月在 AWS Re:Invent 上發(fā)表的視頻更詳細(xì)地描述了無服務(wù)器環(huán)境中可用的一些身份驗證選擇:AWS re:Invent 2016:無服務(wù)器身份驗證和授權(quán):身份管理 (MBL306)。

        不斷成熟中的無服務(wù)器工具和生態(tài)

        雖然還沒接近成熟期,無服務(wù)器有機會成為企業(yè)通過云平臺交付產(chǎn)品和服務(wù)的主要力量。隨著 serverless 的成熟并越來越多地被新項目和混合應(yīng)用所采用,隨著企業(yè)開始選擇將現(xiàn)有應(yīng)用程序遷移到 serverless 架構(gòu),企業(yè)數(shù)字和上云的發(fā)展軌跡很可能會在無服務(wù)器市場重復(fù),盡管 serverless 目前的市場占有率還較小。雖然面向企業(yè)和企業(yè)的關(guān)鍵任務(wù)軟件可能尚未出現(xiàn),但一些安全功能和整體生態(tài)系統(tǒng)工具仍需成熟,但無服務(wù)器的用例表明,除了初創(chuàng)公司之外,無服務(wù)器的可能性越來越大就像今天成熟的云計算一樣,成為值得企業(yè)數(shù)字化「全面采用」的新一代云計算架構(gòu)。
        (邯鄲小程序開發(fā)

      最新資訊
      ? 2018 河北碼上網(wǎng)絡(luò)科技有限公司 版權(quán)所有 冀ICP備18021892號-1   
      ? 2018 河北碼上科技有限公司 版權(quán)所有.
      主站蜘蛛池模板: 99久久精品国产高清一区二区 | 一区二区三区观看免费中文视频在线播放 | 无码aⅴ精品一区二区三区浪潮| 波多野结衣一区二区免费视频| 天堂一区二区三区在线观看| 国产一区二区三区免费在线观看| 国产综合无码一区二区色蜜蜜| 一区二区不卡久久精品| 91精品一区二区三区久久久久| 亚洲av无码一区二区三区人妖 | 精品久久综合一区二区| 成人精品视频一区二区三区| 亚洲中文字幕乱码一区| 久久国产精品亚洲一区二区| 午夜在线视频一区二区三区| 一区二区三区四区视频| 91福利国产在线观看一区二区 | 无码夜色一区二区三区| 视频一区二区中文字幕| 国产一区二区三区播放| 精品视频一区二区三区四区| 亚洲午夜一区二区三区| 国产精品香蕉一区二区三区| 中文字幕日本一区| 久久精品一区二区三区AV| 国产一区三区三区| 国产一区二区在线视频播放| 久久AAAA片一区二区| 国产一区内射最近更新| 北岛玲在线一区二区| 日本强伦姧人妻一区二区| 韩国精品一区视频在线播放| 九九无码人妻一区二区三区| 亚洲AV噜噜一区二区三区| 国产欧美一区二区精品仙草咪| 麻豆一区二区免费播放网站| 欧美成人aaa片一区国产精品| 亚洲av永久无码一区二区三区| 国产品无码一区二区三区在线| 美女视频黄a视频全免费网站一区| 无码人妻精品一区二区三18禁|