摘要:讀了微軟總結(jié)的云計(jì)算設(shè)計(jì)模式系列文章,覺(jué)得很受啟發(fā),遂將這個(gè)系列翻譯出來(lái)如下。每個(gè)模式都描述了該模式試圖解決的問(wèn)題,在使用該模式時(shí)應(yīng)考慮的問(wèn)題,以及一個(gè)基于微軟云的例子。
讀了微軟 Azure 總結(jié)的云計(jì)算設(shè)計(jì)模式系列文章,覺(jué)得很受啟發(fā),遂將這個(gè)系列翻譯出來(lái)如下。
云計(jì)算模型這些設(shè)計(jì)模式對(duì)于在云上構(gòu)建高可用性,伸縮性,安全的應(yīng)用程序很有用。
每個(gè)模式都描述了該模式試圖解決的問(wèn)題,在使用該模式時(shí)應(yīng)考慮的問(wèn)題,以及一個(gè)基于微軟 Azure 云的例子。大多數(shù)的模式中包含了代碼實(shí)例或代碼片段來(lái)展示如何在 Azure 上部署使用這種模式。然而,大多數(shù)的模式同樣適用于 Azure 以外的任何分布式系統(tǒng)。
指標(biāo) | 描述 |
---|---|
可用性 | 可用性指的是系統(tǒng)正常工作的時(shí)間,通常通過(guò)測(cè)量服務(wù)正常工作的時(shí)間百分比來(lái)得到。它受系統(tǒng)故障,基礎(chǔ)設(shè)施問(wèn)題,惡意攻擊,系統(tǒng)負(fù)載等方面的影響。云端應(yīng)用通常為用戶(hù)提供“服務(wù)等級(jí)協(xié)議”(SLA),因此應(yīng)用必須盡可能高地保證其可用性。 |
數(shù)據(jù)管理 | 數(shù)據(jù)管理時(shí)云端應(yīng)用的關(guān)鍵,它影響著應(yīng)用的大多數(shù)質(zhì)量屬性。出于性能,伸縮性,可用性等多方面的考慮,數(shù)據(jù)通常會(huì)被存到多個(gè)區(qū)域的多臺(tái)服務(wù)器上。而這帶來(lái)一系列的挑戰(zhàn),諸如需要維護(hù)數(shù)據(jù)一致性,以及需要在多個(gè)不同區(qū)域間同步數(shù)據(jù)。 |
設(shè)計(jì)和實(shí)現(xiàn) | 好的設(shè)計(jì)包含諸如組件設(shè)計(jì)和部署的一致性與內(nèi)聚性,運(yùn)維與開(kāi)發(fā)的可維護(hù)性,組件與子系統(tǒng)的重用性。在設(shè)計(jì)和實(shí)現(xiàn)階段的決策對(duì)整個(gè)應(yīng)用的質(zhì)量和云計(jì)算服務(wù)提供方的總花費(fèi)有巨大的影響。 |
消息傳遞 | 云端應(yīng)用的天然的分布屬性使之需要一個(gè)消息傳遞設(shè)施來(lái)連接各個(gè)組件和服務(wù)。異步消息模式被廣泛應(yīng)用,它提供了很多好處,但也帶來(lái)了很多挑戰(zhàn):消息到達(dá)順序,缺失消息管理,冪等性等等。 |
管理與監(jiān)控 | 云端應(yīng)用運(yùn)行在遠(yuǎn)程的數(shù)據(jù)中心,應(yīng)用擁有者沒(méi)有管理基礎(chǔ)設(shè)施和操作系統(tǒng)的全部權(quán)限。這使得它比本地部署的應(yīng)用更難管理和監(jiān)控。應(yīng)用必須暴露給管理員和運(yùn)維人員足夠的運(yùn)行時(shí)信息來(lái)使其能夠管理和監(jiān)控系統(tǒng),同時(shí)也應(yīng)該支持在不中斷或重新部署服務(wù)的情況下,改變商業(yè)需求和定制化服務(wù)。 |
性能和伸縮性 | 性能是在給定的時(shí)間范圍內(nèi)執(zhí)行任何命令的響應(yīng)能力的指標(biāo);伸縮性是指系統(tǒng)在不影響其性能的前提下,能夠處理增加的負(fù)載,隨時(shí)增加可用資源。在實(shí)際應(yīng)用中,云端應(yīng)用經(jīng)常遇到變化非常大的負(fù)載和負(fù)載峰值。提前去預(yù)測(cè)這些,尤其是在多租戶(hù)的場(chǎng)景下,幾乎是不可能的。取而代之,我們應(yīng)該讓我們的應(yīng)用具備無(wú)限按需伸縮的能力。伸縮性不應(yīng)單單關(guān)注于計(jì)算實(shí)例(虛擬機(jī)),也包括數(shù)據(jù)存儲(chǔ),消息傳遞等很多方面。 |
故障恢復(fù)能力 | 故障恢復(fù)能力指的是系統(tǒng)優(yōu)雅地從故障中恢復(fù)的能力。在云端部署的應(yīng)用,通常是以多租戶(hù)的模式,使用共享平臺(tái)的服務(wù),與其他租戶(hù)競(jìng)爭(zhēng)帶寬和資源,通過(guò)互聯(lián)網(wǎng)通信。并且他們運(yùn)行在聯(lián)合的多種硬件層之上。這意味著持續(xù)性的和偶發(fā)性的異常發(fā)生的可能性都會(huì)增加。檢測(cè)到故障,并且高效地從故障中恢復(fù),對(duì)于提高系統(tǒng)的故障恢復(fù)能力來(lái)說(shuō),是必須的。 |
安全 | 安全性指的是系統(tǒng)阻止惡意攻擊或?qū)?yīng)用使用于產(chǎn)品設(shè)計(jì)以外的場(chǎng)景,同時(shí)阻止信息泄露的能力。云端應(yīng)用通常會(huì)接入互聯(lián)網(wǎng),暴露給大眾,并且可能會(huì)為非受信任的用戶(hù)提供服務(wù)。應(yīng)用必須以一種可靠的方式來(lái)設(shè)計(jì)和部署,來(lái)防止惡意攻擊,并對(duì)用戶(hù)進(jìn)行權(quán)限控制,保護(hù)隱私數(shù)據(jù)。 |
模式 | 概述 |
---|---|
信使 | 創(chuàng)建輔助服務(wù)來(lái)發(fā)送有關(guān)消費(fèi)者服務(wù)或應(yīng)用信息的網(wǎng)絡(luò)請(qǐng)求 |
反墮落層 | 在現(xiàn)代應(yīng)用和既存系統(tǒng)之間實(shí)現(xiàn)一個(gè)適配層。 |
前端的后端 | 為特定的前端應(yīng)用或接口創(chuàng)建多帶帶的后端服務(wù)供其消費(fèi)。 |
隔離艙 | 將應(yīng)用中的所有元素隔離開(kāi)放到池中,即便其中某個(gè)元素失敗了,其他的能夠繼續(xù)正常工作。 |
緩存 | 按需將數(shù)據(jù)從數(shù)據(jù)倉(cāng)庫(kù)載入到緩存。 |
斷路器 | 處理遠(yuǎn)程服務(wù)或資源導(dǎo)致的不能立即修復(fù)的故障。 |
讀寫(xiě)分離(CQRS) | 通過(guò)使讀數(shù)據(jù)的操作和更新數(shù)據(jù)的操作使用不同的接口達(dá)到讀寫(xiě)分離。 |
補(bǔ)償性事物 | 撤銷(xiāo)一系列任務(wù)構(gòu)成的工作,來(lái)實(shí)現(xiàn)一個(gè)最終一致性的操作。 |
競(jìng)爭(zhēng)消費(fèi)者 | 激活多個(gè)并發(fā)的消費(fèi)者來(lái)處理從同一頻道接收的消息。 |
計(jì)算資源合并 | 將多個(gè)任務(wù)或操作合并到一個(gè)計(jì)算單元。 |
事件溯源 | 使用一個(gè)只增的數(shù)據(jù)倉(cāng)庫(kù)來(lái)記錄某一域中對(duì)數(shù)據(jù)進(jìn)行的所有操作。 |
外部配置存儲(chǔ) | 將配置信息從應(yīng)用的部署包中抽離出來(lái)放到一個(gè)統(tǒng)一的中心化管理的存儲(chǔ)中心。 |
聯(lián)合認(rèn)證 | 將認(rèn)證服務(wù)托管給外部認(rèn)證服務(wù)提供方。 |
看門(mén)者模式 | 通過(guò)使用一個(gè)專(zhuān)用的主機(jī)實(shí)例作為客戶(hù)端和應(yīng)用間的代理來(lái)保護(hù)應(yīng)用和服務(wù)。通過(guò)該代理來(lái)檢驗(yàn),凈化請(qǐng)求,并傳遞請(qǐng)求來(lái)達(dá)到此目的。 |
網(wǎng)管合并 | 使用網(wǎng)管來(lái)將多個(gè)獨(dú)立的請(qǐng)求合并成一個(gè)請(qǐng)求。 |
網(wǎng)關(guān)壓力卸載模式 | 將一個(gè)共享的或?qū)S械姆?wù)交給網(wǎng)關(guān)執(zhí)行。 |
基于網(wǎng)關(guān)的路由 | 通過(guò)一個(gè)網(wǎng)管將請(qǐng)求路由到多個(gè)不同的服務(wù)。 |
健康端點(diǎn)監(jiān)控 | 為應(yīng)用實(shí)現(xiàn)功能性檢查服務(wù),使外部攻擊能夠通過(guò)這個(gè)暴露給外部的服務(wù)進(jìn)行定期檢查。 |
索引表 | 為數(shù)據(jù)倉(cāng)庫(kù)中被頻繁查詢(xún)的字段建立索引。 |
指揮者選舉 | 為一系列分布式部署的相互合作的任務(wù)實(shí)例選舉一個(gè)指揮者來(lái)負(fù)責(zé)管理其他實(shí)例。 |
物化視圖 | 當(dāng)數(shù)據(jù)格式不符合查詢(xún)所需的格式時(shí),為一個(gè)或幾個(gè)數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)生成預(yù)處理的視圖。 |
P管道與過(guò)濾器模式 | 將一個(gè)處理復(fù)雜流程的任務(wù)分解成一系列能夠重用的獨(dú)立的元素。 |
帶優(yōu)先級(jí)的隊(duì)列 | 為發(fā)給服務(wù)的請(qǐng)求標(biāo)示出優(yōu)先級(jí),從而使高優(yōu)先級(jí)的請(qǐng)求能夠在接受到后比低優(yōu)先級(jí)的任務(wù)更快的處理。 |
基于隊(duì)列的負(fù)載均衡 | 使用隊(duì)列來(lái)充當(dāng)任務(wù)和它所調(diào)用的服務(wù)之間的緩沖區(qū),來(lái)平滑地處理突發(fā)的高負(fù)載。 |
重試 | 當(dāng)應(yīng)用在連接服務(wù)或網(wǎng)絡(luò)資源過(guò)程中遇到錯(cuò)誤時(shí),通過(guò)顯式地重試之前失敗的操作來(lái)使它具備處理預(yù)期的,臨時(shí)性的錯(cuò)誤的能力。 |
調(diào)度代理監(jiān)管模式 | 在一系列分布的服務(wù)和遠(yuǎn)程資源間調(diào)度一些操作。 |
分片 | 將數(shù)據(jù)存儲(chǔ)水平分割存到多個(gè)分區(qū)或分片中。 |
挎斗模式 | 將應(yīng)用的部分組件部署到多帶帶的進(jìn)程或容器中來(lái)進(jìn)行隔離和封裝。 |
靜態(tài)內(nèi)容托管 | 將靜態(tài)內(nèi)容部署到云端的存儲(chǔ)服務(wù)將內(nèi)容直接提供給客戶(hù)端。 |
扼殺者模式 | 漸進(jìn)式地將既存系統(tǒng)中的部分功能一步步用新應(yīng)用或服務(wù)替換。 |
限流 | 控制某一應(yīng)用實(shí)例,租戶(hù)或整個(gè)服務(wù)對(duì)資源的消耗量。 |
代客密鑰 | 使用一個(gè)標(biāo)識(shí)或密鑰來(lái)為客戶(hù)端提供指定資源或服務(wù)的受限制的直接連接。 |
原文鏈接在 這里
翻譯好累啊
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/11825.html
摘要:讀了微軟總結(jié)的云計(jì)算設(shè)計(jì)模式系列文章,覺(jué)得很受啟發(fā),遂將這個(gè)系列翻譯出來(lái)如下。每個(gè)模式都描述了該模式試圖解決的問(wèn)題,在使用該模式時(shí)應(yīng)考慮的問(wèn)題,以及一個(gè)基于微軟云的例子。 讀了微軟 Azure 總結(jié)的云計(jì)算設(shè)計(jì)模式系列文章,覺(jué)得很受啟發(fā),遂將這個(gè)系列翻譯出來(lái)如下。 云計(jì)算模型 這些設(shè)計(jì)模式對(duì)于在云上構(gòu)建高可用性,伸縮性,安全的應(yīng)用程序很有用。每個(gè)模式都描述了該模式試圖解決的問(wèn)題,在使用...
摘要:大數(shù)據(jù)時(shí)代第三次信息化浪潮年前后,以云計(jì)算大數(shù)據(jù)物聯(lián)網(wǎng)的首發(fā)為標(biāo)志迎來(lái)第三次信息化浪潮。大數(shù)據(jù)的發(fā)展歷程大數(shù)據(jù)的概念和影響大數(shù)據(jù)的特性特性指。處理大規(guī)模圖結(jié)構(gòu)數(shù)據(jù)。物聯(lián)網(wǎng)應(yīng)用大數(shù)據(jù)云計(jì)算物聯(lián)網(wǎng)的關(guān)系三者相輔相成,既有聯(lián)系又有區(qū)別。 ...
摘要:億歐智庫(kù)此次推出年中國(guó)云計(jì)算行業(yè)發(fā)展研究報(bào)告以下簡(jiǎn)稱(chēng)報(bào)告,希望通過(guò)桌面研究及專(zhuān)家訪(fǎng)談的方式,探討云計(jì)算產(chǎn)業(yè)發(fā)展現(xiàn)狀和助力企業(yè)數(shù)字化轉(zhuǎn)型的路徑,以及產(chǎn)業(yè)未來(lái)的發(fā)展趨勢(shì)和面臨的主要挑戰(zhàn)。信息技術(shù)在中國(guó)經(jīng)歷了近30年的發(fā)展,云計(jì)算被看作繼PC、移動(dòng)互聯(lián)網(wǎng)變革之后的第三次IT浪潮,已成為信息產(chǎn)業(yè)發(fā)展的重要支撐。云計(jì)算是助力企業(yè)數(shù)字化轉(zhuǎn)型的核心驅(qū)動(dòng)力,它推動(dòng)了企業(yè)生產(chǎn)方式和商業(yè)模式的根本性改變,引發(fā)整...
摘要:近年來(lái),許多專(zhuān)業(yè)人員都已經(jīng)對(duì)簡(jiǎn)歷進(jìn)行了整理,并調(diào)整了技能以從事云計(jì)算方面的工作。這里概述了云計(jì)算的一些常見(jiàn)職業(yè)以及他們所需的技能云管理員企業(yè)需要一個(gè)人來(lái)配置云部署并執(zhí)行管理和監(jiān)控任務(wù)。 近年來(lái),許多IT專(zhuān)業(yè)人員都已經(jīng)對(duì)簡(jiǎn)歷進(jìn)行了整理,并調(diào)整了技能以從事云計(jì)算方面的工作。云行業(yè)持續(xù)快速地增長(zhǎng)。根據(jù)Gartner的報(bào)告,公有云服務(wù)市場(chǎng)在2017年將增長(zhǎng)18%,達(dá)到2486億美元,高于2016年的...
摘要:以下概述了成功的云遷移所涉及的主要步驟。是大多數(shù)云遷移的典型模型。企業(yè)對(duì)云遷移的優(yōu)先級(jí)要特別小心謹(jǐn)慎。云計(jì)算架構(gòu)師必須考慮整個(gè)部署范圍,并在執(zhí)行實(shí)際工作負(fù)載遷移之前安裝和驗(yàn)證任何所需的依賴(lài)項(xiàng)。企業(yè)為將內(nèi)部部署應(yīng)用程序遷移到云端做好準(zhǔn)備了嗎?從重新托管與重新設(shè)計(jì)到測(cè)試和監(jiān)控,企業(yè)需要遵循一些關(guān)鍵步驟才能成功實(shí)現(xiàn)云遷移。 很多企業(yè)出于各種原因?qū)⒐ぷ髫?fù)載遷移到了云端。公有云比大多數(shù)內(nèi)部部署數(shù)...
閱讀 1587·2021-10-18 13:35
閱讀 2369·2021-10-09 09:44
閱讀 824·2021-10-08 10:05
閱讀 2722·2021-09-26 09:47
閱讀 3577·2021-09-22 15:22
閱讀 441·2019-08-29 12:24
閱讀 2004·2019-08-29 11:06
閱讀 2862·2019-08-26 12:23