備戰(zhàn)解決方案架構(gòu)師考試,你需要哪些知識和技能?
想要成為一名解決方案架構(gòu)師,你要過的第一關(guān)就是通過相關(guān)的考試以獲得專業(yè)認(rèn)證,這能證明你已經(jīng)掌握了一些知識,并且能夠設(shè)計復(fù)雜的系統(tǒng)。
成為解決方案架構(gòu)師并不是一件容易的事情,首先你需要成為一名優(yōu)秀的工程師。這意味著你已經(jīng)非常了解算法,并且知道如何有效地應(yīng)用它們,優(yōu)秀的開發(fā)人員還得具有設(shè)計復(fù)雜體系結(jié)構(gòu)系統(tǒng)的經(jīng)驗。
目前最受歡迎的認(rèn)證是AWS解決方案架構(gòu)師、Azure解決方案架構(gòu)師和谷歌云平臺架構(gòu)師。我將指導(dǎo)你完成準(zhǔn)備AWS解決方案架構(gòu)師考試的必要基礎(chǔ)知識,這些基礎(chǔ)知識也適用于其他認(rèn)證考試。
計算能力
這是所有云系統(tǒng)的基本支柱,無論云系統(tǒng)背后是真實(shí)的實(shí)體服務(wù)器還是虛擬的環(huán)境。對我們來說,重要的是一個專門運(yùn)行應(yīng)用程序的地方,以及能夠恰當(dāng)?shù)靥幚砉ぷ髁康哪芰?。因此,理解配置不同類型的計算系統(tǒng)的概念至關(guān)重要。
如果應(yīng)用程序消耗大量計算資源,那么系統(tǒng)應(yīng)具有足夠的中央處理器(CPU)和隨機(jī)存取存儲器(RAM);如果應(yīng)用程序執(zhí)行許多I/O操作,那么系統(tǒng)需要集中精力進(jìn)行配置。
圖源:unsplash
了解應(yīng)用程序的必要性有助于定義系統(tǒng)需求。例如,在亞馬遜上,彈性云計算(EC2)是一項可以提供計算能力的服務(wù),它具有各種類型的實(shí)例來滿足不同的需求,做出正確的選擇還可以節(jié)約成本。
自動伸縮組(ASG)是AWS中的服務(wù)。一旦用戶基礎(chǔ)增加,可伸縮性問題可能就會出現(xiàn),這就是自動伸縮的概念。如果沒有足夠的資源,它就將自動增加計算器的數(shù)量。當(dāng)越來越多的機(jī)器開始工作時,流量應(yīng)在它們之間平均分配。彈性負(fù)載均衡器(ELB)是AWS中的另一項服務(wù),可以幫助你解決這個難題。
當(dāng)應(yīng)用程序很簡單時,可以將其轉(zhuǎn)為無服務(wù)器,這意味著不會配置服務(wù)器和負(fù)載均衡器,一切都會由云系統(tǒng)處理,并根據(jù)流量自動伸縮。應(yīng)用程序可以是函數(shù)或函數(shù)鏈。云系統(tǒng)負(fù)責(zé)執(zhí)行它們,因此命名為serverless。亞馬遜 Lambda就是執(zhí)行這些函數(shù)的服務(wù)。
存儲
有許多可用的存儲類型——對象存儲,塊存儲或用于不同操作系統(tǒng)的文件系統(tǒng)存儲,它們有自己的用途和應(yīng)用。作為一名解決方案架構(gòu)師,你需要能選擇合適的解決方案來滿足要求,以保證良好的性能并使其具有成本效益。
- 對象存儲(在AWS中是S3)用于視頻、圖像和文檔等簡單對象。它具有很高的數(shù)據(jù)持久性,可以用作存放應(yīng)用程序資產(chǎn)的地方。
- 塊存儲(AWS EBS)是具有塊級結(jié)構(gòu)的高性能存儲。此類存儲只能同時連接到一臺計算機(jī)上。但有一個選項可以將其分離,稍后可以在另一臺計算機(jī)上使用。
- 文件系統(tǒng)存儲(AWS EFS)提供了像文件和文件夾之間的常見結(jié)構(gòu)。當(dāng)共享訪問計算隊列中所需的數(shù)據(jù)時,這對場景很有用。它充當(dāng)網(wǎng)絡(luò)驅(qū)動器,可以由多個使用者同時使用。
數(shù)據(jù)庫
你需要對數(shù)據(jù)庫中數(shù)據(jù)的組織方式有清楚的了解。在選擇數(shù)據(jù)庫之前,請問自己以下問題:
- 你是否需要執(zhí)行復(fù)雜的查詢和表連接?
- 誰將負(fù)責(zé)數(shù)據(jù)庫的維護(hù)和更新?
數(shù)據(jù)庫類型包括關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫。為解決方案選擇合適的數(shù)據(jù)庫至關(guān)重要,它定義了未來的性能和可伸縮性。
使用關(guān)系型數(shù)據(jù)庫,數(shù)據(jù)會變得更加結(jié)構(gòu)化,這使我們能夠運(yùn)行不同類型的查詢;非關(guān)系型數(shù)據(jù)庫以不同的方式組織保存和查詢數(shù)據(jù)(例如,作為鍵值存儲),這會使水平伸縮更容易執(zhí)行。
接下來,你需要選擇它是否為無服務(wù)器。無服務(wù)器數(shù)據(jù)庫由云系統(tǒng)自動維護(hù)和擴(kuò)展。AWS的DynamoDB是一個無服務(wù)器的非關(guān)系型數(shù)據(jù)庫,其中數(shù)據(jù)被組織為鍵值存儲。而對于關(guān)系型數(shù)據(jù)庫,AWS提供具有不同引擎的關(guān)系型數(shù)據(jù)庫服務(wù)以及Aurora和Aurora Serverless(均為Amazon專有數(shù)據(jù)庫)。
除此之外,你還必須記住要進(jìn)行多少次讀取和寫入操作。例如,如果組織中的許多其他部門正在讀取數(shù)據(jù)庫,那么可以考慮使用讀副本;如果需要對同一數(shù)據(jù)進(jìn)行多次讀取,則可以選擇使用Elasticache頻繁緩存的請求。
聯(lián)網(wǎng)
你需要了解什么是公共網(wǎng)絡(luò)和私有網(wǎng)絡(luò)。在分布式系統(tǒng)中,通信是通過網(wǎng)絡(luò)進(jìn)行組織的。使用無類別域間路由(CIDR)可以限制對網(wǎng)絡(luò)中特定資源的訪問,它還是安全解決方案的重要組成部分。當(dāng)然,沒有人想對數(shù)據(jù)庫進(jìn)行公開訪問。與此相反,數(shù)據(jù)庫應(yīng)該位于私有網(wǎng)絡(luò)中,并且只應(yīng)允許來自定義源的入站流量。
花點(diǎn)時間學(xué)習(xí)一下TCP/IP協(xié)議的工作原理,檢查不同的網(wǎng)絡(luò)拓?fù)洹_@將揭示如何構(gòu)建一個只具有單一互聯(lián)網(wǎng)入口點(diǎn)的系統(tǒng),如何僅允許出站流量,以及如何防護(hù)以免遭受不同攻擊,并擁有一個穩(wěn)定的彈性解決方案。
亞馬遜有一套豐富的聯(lián)網(wǎng)服務(wù)。以下內(nèi)容只是其中的一小部分:子網(wǎng)、安全組、虛擬私有云(VPC)、互聯(lián)網(wǎng)網(wǎng)關(guān)、NAT網(wǎng)關(guān)和Web應(yīng)用程序防火墻。
這是AWS解決方案架構(gòu)師考試所需的基礎(chǔ)知識。無論你準(zhǔn)備任何認(rèn)證考試還是想要進(jìn)一步擴(kuò)展知識,能夠建立彈性和可伸縮的體系結(jié)構(gòu)都是一項很有價值的技能。
本文轉(zhuǎn)載自微信公眾號「讀芯術(shù)」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系讀芯術(shù)公眾號。