欧美一级特黄aaa大片在线观看_国产一级a毛一级a看免费视频_亚洲国产成人精品女人久久久_少妇一级婬片免费放一级全黄少妇性色生活片_特级丰满少妇一级AAAA爱毛片_欧美日韩人妻精品一区二区三区_寡妇高潮一级毛片91免费看`日韩一区二区三区_天天综合网~永久入口

海馬課堂官方電話(huà) 400-111-0321

首頁(yè) > 留學(xué)資訊 > 加拿大留學(xué)輔導(dǎo) > 康卡迪亞大學(xué)前5種分布式系統(tǒng)設(shè)計(jì)模式

康卡迪亞大學(xué)前5種分布式系統(tǒng)設(shè)計(jì)模式

作者:海馬 發(fā)布時(shí)間:2023-10-09 16:55:06

分布式應(yīng)用是現(xiàn)代軟件開(kāi)發(fā)行業(yè)不可或缺的一部分。它們是云存儲(chǔ)服務(wù)的支柱,使網(wǎng)絡(luò)應(yīng)用程序能夠高度響應(yīng)。當(dāng)程序員開(kāi)發(fā)這些系統(tǒng)時(shí),他們需要一些基本的構(gòu)件,作為使用通用詞匯進(jìn)行交流的起點(diǎn)。這就是分布式系統(tǒng)設(shè)計(jì)模式的價(jià)值所在。今天,我們將介紹 5 種最重要的分布式系統(tǒng)設(shè)計(jì)模式,讓你了解它們的優(yōu)缺點(diǎn)以及何時(shí)使用。
康卡迪亞大學(xué)前5種分布式系統(tǒng)設(shè)計(jì)模式

一、什么是分布式系統(tǒng)設(shè)計(jì)模式?

設(shè)計(jì)模式是構(gòu)建系統(tǒng)的行之有效的方法,每種模式都適用于特定的用例。它們不是實(shí)現(xiàn),而是構(gòu)建系統(tǒng)的抽象方法。大多數(shù)設(shè)計(jì)模式都是多年來(lái)由許多不同的開(kāi)發(fā)人員開(kāi)發(fā)和更新的,因此它們通常是非常有效的起點(diǎn)。

設(shè)計(jì)模式是構(gòu)建模塊,程序員可以利用現(xiàn)有的知識(shí),而不是為每個(gè)系統(tǒng)從頭開(kāi)始。它們還能創(chuàng)建一套標(biāo)準(zhǔn)的系統(tǒng)設(shè)計(jì)模式,幫助其他開(kāi)發(fā)人員了解自己的項(xiàng)目如何與特定系統(tǒng)協(xié)同工作。

創(chuàng)造性設(shè)計(jì)模式為創(chuàng)建新對(duì)象提供了基礎(chǔ)。結(jié)構(gòu)模式定義了解決方案的整體結(jié)構(gòu)。行為模式描述對(duì)象及其相互通信的方式。

分布式系統(tǒng)設(shè)計(jì)模式是用于開(kāi)發(fā)分布式系統(tǒng)的設(shè)計(jì)模式,分布式系統(tǒng)本質(zhì)上是計(jì)算機(jī)和數(shù)據(jù)中心的集合,對(duì)終端用戶(hù)而言,它們就像一臺(tái)計(jì)算機(jī)。這些分布式設(shè)計(jì)模式概述了軟件架構(gòu),以確定不同節(jié)點(diǎn)如何相互通信、哪些節(jié)點(diǎn)負(fù)責(zé)哪些任務(wù)以及不同任務(wù)的流程。

這些模式通常用于大規(guī)模分布式云計(jì)算系統(tǒng)和可擴(kuò)展微服務(wù)軟件系統(tǒng)的架構(gòu)設(shè)計(jì)。

二、分布式設(shè)計(jì)模式的類(lèi)型

大多數(shù)分布式設(shè)計(jì)模式根據(jù)其功能可分為以下三類(lèi)。

1.對(duì)象通信:描述系統(tǒng)不同組件間通信的消息傳遞協(xié)議和權(quán)限。

2.安全性:解決保密性、完整性和可用性方面的問(wèn)題,確保系統(tǒng)免受未經(jīng)授權(quán)的訪問(wèn)。

3.事件驅(qū)動(dòng): 描述系統(tǒng)事件的生成、檢測(cè)、使用和響應(yīng)的模式。

三、前5種分布式系統(tǒng)設(shè)計(jì)模式

1. 命令和信息請(qǐng)求責(zé)任分離(CQRS)

CQRS 模型側(cè)重于分離分布式系統(tǒng)的讀寫(xiě)操作,以提高可擴(kuò)展性和安全性。這種模式使用命令將數(shù)據(jù)寫(xiě)入持久內(nèi)存,使用查詢(xún)查找和檢索數(shù)據(jù)。后者由接收用戶(hù)請(qǐng)求的指揮中心管理。然后,指揮中心檢索數(shù)據(jù)并進(jìn)行必要的修改,保存數(shù)據(jù)并通知讀取服務(wù)。然后,閱讀服務(wù)會(huì)更新閱讀模型,向用戶(hù)顯示所做的更改。

a.優(yōu)點(diǎn)

通過(guò)委托任務(wù)降低系統(tǒng)復(fù)雜性。

明確區(qū)分業(yè)務(wù)邏輯和驗(yàn)證。

有助于根據(jù)任務(wù)對(duì)流程進(jìn)行分類(lèi)。

減少對(duì)共享數(shù)據(jù)的意外更改。

減少可訪問(wèn)修改數(shù)據(jù)的實(shí)體數(shù)量。

b.缺點(diǎn)

需要在控制模型和讀取模型之間持續(xù)通信。

發(fā)送高吞吐量請(qǐng)求時(shí)可能會(huì)增加延遲。

服務(wù)進(jìn)程之間沒(méi)有通信手段。

c.使用案例

CQRS 非常適合數(shù)據(jù)密集型應(yīng)用,如 SQL 或 NoSQL 數(shù)據(jù)庫(kù)管理系統(tǒng)。它還適用于數(shù)據(jù)密集型微服務(wù)架構(gòu)。它非常適合管理具有持久狀態(tài)的應(yīng)用程序,因?yàn)閷?xiě)入器/讀取器分離有助于管理持久狀態(tài)。

2.兩階段承諾(2PC)

2PC 與 CQRS 類(lèi)似,都采用事務(wù)處理方式,并依賴(lài)于中央命令,但會(huì)根據(jù)分區(qū)的類(lèi)型和完成階段來(lái)處理分區(qū)。兩個(gè)階段是準(zhǔn)備階段和承諾階段,前者是中央命令指示服務(wù)準(zhǔn)備數(shù)據(jù),后者是服務(wù)發(fā)送準(zhǔn)備好的數(shù)據(jù)的信號(hào)。

2PC 系統(tǒng)中的所有服務(wù)默認(rèn)都處于封鎖狀態(tài),這意味著它們不能發(fā)送數(shù)據(jù)。當(dāng)服務(wù)被鎖定時(shí),它們會(huì)完成準(zhǔn)備階段,以便在解鎖時(shí)發(fā)送數(shù)據(jù)。協(xié)調(diào)器依次解鎖服務(wù)并請(qǐng)求它們發(fā)送數(shù)據(jù)。如果某個(gè)服務(wù)尚未準(zhǔn)備好發(fā)送數(shù)據(jù),協(xié)調(diào)器就會(huì)切換到另一個(gè)服務(wù)。當(dāng)所有準(zhǔn)備就緒的數(shù)據(jù)都已發(fā)送完畢時(shí),所有服務(wù)都會(huì)解除阻塞,等待協(xié)調(diào)者的新任務(wù)。

2PC 從根本上確保了一次只能執(zhí)行一個(gè)服務(wù),使流程比 CQRS 更靈活、更一致。

a.優(yōu)點(diǎn)

由于不存在相互競(jìng)爭(zhēng)的請(qǐng)求,因此運(yùn)行穩(wěn)定可靠。

可擴(kuò)展性強(qiáng),可像處理單機(jī)數(shù)據(jù)一樣輕松處理大型數(shù)據(jù)集。

允許同時(shí)隔離和共享數(shù)據(jù)。

b.缺點(diǎn)

不容錯(cuò),由于同步操作,容易出現(xiàn)死鎖和崩潰。

與其他設(shè)計(jì)模式相比,需要更多資源。

c.使用案例

2PC 是處理高風(fēng)險(xiǎn)交易的分布式系統(tǒng)的理想選擇,在這種系統(tǒng)中,準(zhǔn)確性比資源效率更重要。即使在大規(guī)模系統(tǒng)中,它也很可靠,出錯(cuò)時(shí)也很容易追蹤。

3 Saga

Saga 是一種異步模型,它不使用中央控制器,而是完全在服務(wù)之間進(jìn)行通信。它解決了上述同步模型的一些缺點(diǎn)。

Saga 使用事件總線(xiàn),允許服務(wù)在微服務(wù)系統(tǒng)中相互通信。總線(xiàn)在服務(wù)之間發(fā)送和接收請(qǐng)求,每個(gè)參與服務(wù)都會(huì)創(chuàng)建一個(gè)本地事務(wù)。然后,參與的服務(wù)發(fā)布一個(gè)事件,其他服務(wù)可以接收到該事件。所有事件都會(huì)被其他服務(wù)監(jiān)聽(tīng)。收到事件的服務(wù)首先執(zhí)行請(qǐng)求的操作。如果該服務(wù)沒(méi)有執(zhí)行該操作,則會(huì)將其發(fā)送給其他服務(wù)。

這種結(jié)構(gòu)類(lèi)似于 2PC 結(jié)構(gòu),因?yàn)槿绻渲幸粋€(gè)服務(wù)無(wú)法執(zhí)行任務(wù),就會(huì)輪流執(zhí)行。不過(guò),Saga 去掉了中央控制元素,以更好地管理流程并減少所需的反饋信息數(shù)量。

a.優(yōu)勢(shì)

單個(gè)服務(wù)可處理更長(zhǎng)時(shí)間的交易。

去中心化使其成為分布式系統(tǒng)的理想選擇。

減少服務(wù)間通信造成的瓶頸。

b.缺點(diǎn)

異步自治使得難以跟蹤執(zhí)行單個(gè)任務(wù)的服務(wù)。

復(fù)雜的協(xié)調(diào)導(dǎo)致故障排除困難。

與以前的模式相比,服務(wù)的隔離度較低。

c.使用案例

Saga 的分散式方法非常適合同時(shí)處理多個(gè)并行請(qǐng)求的可擴(kuò)展無(wú)服務(wù)器功能。AWS 將基于 Saga 的模型用于許多功能,如 step 和 lambda 功能。

4.重復(fù)負(fù)載平衡服務(wù)(RLBS)

RLBS 模式是最簡(jiǎn)單也是使用最廣泛的規(guī)劃模式。在最基本的層面上,它由多個(gè)相同的服務(wù)組成,所有服務(wù)都向中央負(fù)載平衡器報(bào)告。每個(gè)服務(wù)都能執(zhí)行任務(wù),并能在出現(xiàn)故障時(shí)進(jìn)行故障切換。負(fù)載平衡器接收來(lái)自終端用戶(hù)的請(qǐng)求,并使用循環(huán)分配或有時(shí)更復(fù)雜的路由算法在各服務(wù)之間分配請(qǐng)求。

雙服務(wù)可確保應(yīng)用程序保持用戶(hù)請(qǐng)求的高可用性,并能在服務(wù)實(shí)例出現(xiàn)故障時(shí)重新分配工作。

RLBS 通常與 Azure Kubernetes 結(jié)合使用,后者是微軟開(kāi)發(fā)的開(kāi)源容器編排技術(shù),可根據(jù)工作流自動(dòng)擴(kuò)展服務(wù)。

a.優(yōu)勢(shì)

從終端用戶(hù)的角度來(lái)看,性能穩(wěn)定。

從損壞的服務(wù)中快速恢復(fù)。

服務(wù)越多,可擴(kuò)展性越高。

并行運(yùn)行良好。

b.缺點(diǎn)

負(fù)載平衡算法下的性能不一致。

需要大量資源來(lái)管理服務(wù)。

c.使用方法

RLBS 適用于全天工作負(fù)載不穩(wěn)定但需要保持低延遲的前端系統(tǒng),如 Netflix 或 Amazon Prime 等在線(xiàn)娛樂(lè)應(yīng)用。

5.分片服務(wù)

除基于復(fù)制的項(xiàng)目外,另一種方法是創(chuàng)建精選服務(wù),每個(gè)服務(wù)只處理一種特定類(lèi)型的請(qǐng)求。這就是所謂的 "分片",因?yàn)槟銓⒄?qǐng)求流量分成了許多不同的部分。例如,你可以讓一個(gè)分片服務(wù)接受所有緩存請(qǐng)求,而另一個(gè)分片服務(wù)只處理高優(yōu)先級(jí)請(qǐng)求。負(fù)載平衡器會(huì)評(píng)估收到的每個(gè)請(qǐng)求,并將其分配給相應(yīng)的分區(qū)來(lái)處理。

分片服務(wù)通常用于創(chuàng)建狀態(tài)服務(wù),因?yàn)閷?duì)于非個(gè)人容器來(lái)說(shuō),狀態(tài)規(guī)模往往太大。分片可確保單個(gè)分區(qū)根據(jù)狀態(tài)大小進(jìn)行擴(kuò)展。

此外,分片服務(wù)還能更快地處理高優(yōu)先級(jí)請(qǐng)求。專(zhuān)用于高優(yōu)先級(jí)請(qǐng)求的分區(qū)可在請(qǐng)求到達(dá)時(shí)立即處理,而無(wú)需排隊(duì)。

a.分片服務(wù)的優(yōu)點(diǎn)

可以交錯(cuò)處理日常請(qǐng)求。

便于對(duì)申請(qǐng)進(jìn)行優(yōu)先排序。

自然排序,易于組合。

b.缺點(diǎn)

維護(hù)大量分段可能需要很多資源。

如果分段使用過(guò)多,可能會(huì)導(dǎo)致生產(chǎn)力下降。

c.使用方法

當(dāng)系統(tǒng)收到的查詢(xún)類(lèi)型不平衡,但某些查詢(xún)具有優(yōu)先權(quán)時(shí),最適合使用分區(qū)服務(wù)。

海馬課堂專(zhuān)業(yè)課程預(yù)習(xí),輔導(dǎo)不滿(mǎn)意隨心退,3500+嚴(yán)選碩博學(xué)霸師資,針對(duì)學(xué)生的薄弱科目和學(xué)校教學(xué)進(jìn)度,匹配背景相符的導(dǎo)師,根據(jù)學(xué)生情況進(jìn)行1V1專(zhuān)屬備課,上課時(shí)間靈活安排,中英雙語(yǔ)詳細(xì)講解課程中的考點(diǎn)、難點(diǎn)問(wèn)題,并提供多方位的課前預(yù)習(xí),輔助學(xué)生掌握全部課程知識(shí),補(bǔ)足短板。

相關(guān)熱詞搜索:

閱讀原文:http://www.fuguojinrong.com/news/15663_59.html

版權(quán)作品,未經(jīng)海馬課堂 highmarktutor.com 書(shū)面授權(quán),嚴(yán)禁轉(zhuǎn)載,違者將被追究法律責(zé)任。

熱門(mén)課程推薦

24h在線(xiàn)客服

海馬課堂官方電話(huà) 400-111-0321

全球留學(xué)生
共同選擇

關(guān)注我們:

備案號(hào):遼ICP備19007957號(hào)-1 聆聽(tīng)您的聲音:feedback@highmark.com.cn企業(yè)熱線(xiàn):400-778-8318

Copyright ?2015- 海馬課堂網(wǎng)絡(luò)科技(大連)有限公司辦公地址:遼寧省大連市高新技術(shù)產(chǎn)業(yè)園區(qū)火炬路32A號(hào)創(chuàng)業(yè)大廈A座18層1801室

歡迎咨詢(xún)

hmkt088

肏屄自拍| 东京热在线后入| 青青草色五月一区| 我就色 婷婷五月天| 人人色,人人乐| 91五月天三区观看| 大香蕉在九| 久久密桃鲁大师| 亚洲五月停停| 色AV国产| 青青草黄片网址| 激情人妻专区| 淫乱熟女精品| 东方色图视频| 久草大香蕉在视频| 欧美.亚洲.日韩.涩涩在线| 人妻操四区| 久久久久男人机机拥女人机| 97性爱国产| 日韩群插| www.欧美熟女乱伦| 17C视频久久| 大大香蕉Av| 巨乳佐山爱| av天堂 性吧| 国产骚逼天天天天天天干| 肏夜夜| 超碰公开揉揉| 涩网站免费在线观看| 大香蕉中文人妻| www九色蝌蚪窝| 大香蕉9vs亚洲| 一本大道AV无码电影| 得得鲁免费AV| 北岛玲人妻在线| 欧美日韩草逼视频| 有码爱爱| www.操bi| 欧美理论wwwwwww| 熟女少妇狠狠五月| 青青五月色婷婷| 一二三四色哟哟中文字幕| 乱伦熟女,亚洲色图| 六月婷婷肏穴视频| 久久久基地| 亚洲成人绿色| 欧美黄色性爱一区| 色色五月天停停| 超碰在线 c| 本庄優花の绝望人妻| 亚洲 欧美 第十页| 无码嗯啊| 欧美亚洲日本三级精品黄色| 亚洲性爱自拍偷拍| 国产情感Av| 人人操人人摸人人射| 黄网站东京热| 丁香视频在线7777| 色迷聚合在线| 女同精品 亚洲| 午夜天堂青草| 人人操 久久久| 亚洲激情文学综合| 欧美中年妇女五月天| 国产特级精品毛片久久久| a片网址导航| 人妻人人操人| av欧va| 国产黄色系列| 色婷婷综合成人| 一本在线欧美| 美女蜜臀嫩穴av麻豆| 京东热成人A片| 国外搭讪肏逼成人小视频| 东京青草久久| 狠狠狠舔舔舔| 五月天婷婷AV网| 久久av成人一起草| AV亚洲色片| 国产后入自拍| 福利人妻97| 操你大逼视频| 成人超碰91在线| 日韩AV无码中| 超碰神马午夜在线免费观看| a女人免费天堂| 蜜桃超碰成人入口VIP不卡| 五月天AV一区二区|