分布式計(jì)算系統(tǒng)架構(gòu)

      網(wǎng)友投稿 1342 2025-04-02

      1??????引言

      分布式計(jì)算是計(jì)算機(jī)科學(xué)中研究分布式系統(tǒng)的一個領(lǐng)域。分布式系統(tǒng)組件位于不同的聯(lián)網(wǎng)計(jì)算機(jī)上,它們通過相互傳遞消息來進(jìn)行通信和協(xié)調(diào)行動,組件之間相互作用以實(shí)現(xiàn)共同的目標(biāo)。

      分布式系統(tǒng)的三個顯著特征是:組件的并發(fā)性、全局時鐘的缺乏和組件故障的獨(dú)立性。

      分布式系統(tǒng)的例子很多,從基于SOA的系統(tǒng)到大型多人在線游戲,再到點(diǎn)對點(diǎn)的應(yīng)用。

      2??????分布式系統(tǒng)

      "分布式系統(tǒng)"、"分布式編程"、"分布式算法?"等術(shù)語中的?"分布式?"一詞最初指的是計(jì)算機(jī)網(wǎng)絡(luò)。在這個網(wǎng)絡(luò)中,各個計(jì)算機(jī)在物理上分布在一定的地理區(qū)域內(nèi)。

      現(xiàn)在這些術(shù)語的使用范圍更廣,甚至有時指的是運(yùn)行在同一臺物理計(jì)算機(jī)上的自主進(jìn)程,并通過消息傳遞進(jìn)行交互。

      雖然對分布式系統(tǒng)沒有一個統(tǒng)一的定義,但常用的定義屬性如下:

      1.?????????有幾個自主的計(jì)算實(shí)體(計(jì)算機(jī)或節(jié)點(diǎn)),每個實(shí)體都有自己的本地存儲器。

      2.?????????實(shí)體之間通過信息傳遞進(jìn)行通信。

      3.?????????系統(tǒng)要能夠承受各個計(jì)算機(jī)的發(fā)生故障。

      4.?????????系統(tǒng)的結(jié)構(gòu)(網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、網(wǎng)絡(luò)延遲、計(jì)算機(jī)數(shù)量)事先并不知道,系統(tǒng)可能由不同種類的計(jì)算機(jī)和網(wǎng)絡(luò)鏈路組成,系統(tǒng)在執(zhí)行分布式程序的過程中可能會發(fā)生變化。

      5.?????????每臺計(jì)算機(jī)對系統(tǒng)只有有限的、不完整的資源。每臺計(jì)算機(jī)可能只知道輸入的一部分。

      此外,我們還需要關(guān)注:

      l??分布式系統(tǒng)可有一個共同的目標(biāo),比如解決一個大型的計(jì)算問題。用戶就會把自主處理器的集合視為一個單元。

      l??或者,每臺計(jì)算機(jī)可有自己的用戶,有各自的需求,分布式系統(tǒng)的目的是協(xié)調(diào)共享資源的使用或?yàn)橛脩籼峁┩ㄐ欧?wù)。

      l??在分布式系統(tǒng)內(nèi)運(yùn)行的計(jì)算機(jī)程序稱為分布式程序(分布式編程就是編寫這種程序的過程)。消息傳遞機(jī)制有很多不同類型的實(shí)現(xiàn),包括純HTTP、類似RPC的連接器和消息隊(duì)列等。

      l??分布式計(jì)算也指利用分布式系統(tǒng)來解決計(jì)算問題。在分布式計(jì)算中,一個問題被分成許多任務(wù),每個任務(wù)由一臺或多臺計(jì)算機(jī)解決,這些計(jì)算機(jī)通過消息傳遞相互通信。

      2.1????并行和分布式計(jì)算的關(guān)聯(lián)

      分布式系統(tǒng)是指有共同工作目標(biāo)的網(wǎng)絡(luò)計(jì)算機(jī)群。術(shù)語"并行計(jì)算?"和?"分布式計(jì)算?"有許多重疊,它們之間不存在明確的區(qū)別。"并行"和?"分布式"都可以被描述為同一個系統(tǒng)。

      典型的分布式系統(tǒng)中的處理器以并行方式并發(fā)運(yùn)行。

      并行計(jì)算可以看作是分布式計(jì)算的一種特殊的緊密耦合形式,而分布式計(jì)算則可以看作是并行計(jì)算的一種松散耦合形式,盡管如此,可以用以下標(biāo)準(zhǔn)將并發(fā)系統(tǒng)粗略地劃分為?"并行?"或?"分布"。

      1.?????????在并行計(jì)算中,所有的處理器都可以訪問共享內(nèi)存,以交換處理器之間的信息。

      2.?????????在分布式計(jì)算中,每個處理器都有自己的私有內(nèi)存(分布式內(nèi)存)。信息是通過處理器之間傳遞消息來交換的。

      (a)、(b):分布式系統(tǒng)。

      (c):并行系統(tǒng)。

      3??????為什么要用分布式系統(tǒng)

      使用分布式系統(tǒng)和分布式計(jì)算的原因可包括:

      3.1????計(jì)算需求

      某一應(yīng)用的計(jì)算需求可能要求使用連接幾臺計(jì)算機(jī)的通信網(wǎng)絡(luò):例如,在一個產(chǎn)生的數(shù)據(jù)是另一個地點(diǎn)需要的數(shù)據(jù)。

      3.2????成本效益和單點(diǎn)故障

      在許多情況下,原則上可以使用單臺計(jì)算機(jī),但出于實(shí)際原因,使用分布式系統(tǒng)是更好的。例如,與單臺高端計(jì)算機(jī)相比,通過使用多臺低端計(jì)算機(jī)組成的集群來獲得所需的性能水平可能更具有成本效益。

      因?yàn)闆]有單點(diǎn)故障問題,可提供比非分布式系統(tǒng)更高的可靠性。

      3.3????擴(kuò)展性強(qiáng)

      此外,分布式系統(tǒng)可能比單處理器系統(tǒng)更容易擴(kuò)展和管理。

      4??????分布式架構(gòu)

      分布式計(jì)算采用了各種硬件和軟件架構(gòu)。

      在較低的層次上,需要將多個CPU與某種網(wǎng)絡(luò)互連,不管該網(wǎng)絡(luò)是印在電路板上還是由松散耦合的設(shè)備和電纜組成。

      在更高的層次上,需要將運(yùn)行在這些CPU上的進(jìn)程與某種通信系統(tǒng)互連起來。

      分布式編程通常分為幾種基本架構(gòu):

      4.1????客戶端-服務(wù)器

      這是智能客戶端與服務(wù)器聯(lián)系獲取數(shù)據(jù),然后將數(shù)據(jù)格式化并顯示給用戶的架構(gòu)。

      4.2????三層

      這種架構(gòu)把系統(tǒng)分為表現(xiàn)層,邏輯層和數(shù)據(jù)層。這簡化了應(yīng)用程序的部署。大多數(shù)Web應(yīng)用都是三層的。

      4.3????n層

      分布式計(jì)算系統(tǒng)架構(gòu)

      N層架構(gòu),通常指的是Web應(yīng)用,它進(jìn)一步將其請求轉(zhuǎn)發(fā)給其他企業(yè)服務(wù)。3層架構(gòu)是N層架構(gòu)的特殊形式。

      4.4????Peer-to-peer

      架構(gòu)中沒有專門的機(jī)器提供服務(wù)或管理網(wǎng)絡(luò)資源,而是將所有的責(zé)任統(tǒng)一分配給所有的機(jī)器,稱為對等機(jī)。

      對等體既可以作為客戶機(jī),也可以作為服務(wù)器。?這種架構(gòu)的例子包括BitTorrent和比特幣網(wǎng)絡(luò)。

      4.5????并發(fā)進(jìn)程

      分布式計(jì)算架構(gòu)的另一個基本方面是并發(fā)進(jìn)程之間的通信和協(xié)調(diào)工作的方法。

      通過各種消息傳遞協(xié)議,進(jìn)程之間可以直接通信,通常是主/從關(guān)系。

      4.6????數(shù)據(jù)庫為中心

      另外,"以數(shù)據(jù)庫為中心"的架構(gòu)可以利用共享數(shù)據(jù)庫,使分布式計(jì)算不需要任何形式的進(jìn)程間直接通信,特別是以數(shù)據(jù)庫為中心的架構(gòu),在一個允許實(shí)時環(huán)境中繼的模式化架構(gòu)中提供關(guān)系處理分析。

      這就實(shí)現(xiàn)了網(wǎng)絡(luò)數(shù)據(jù)庫參數(shù)內(nèi)和參數(shù)外的分布式計(jì)算功能。

      5??????分布式系統(tǒng)的例子

      1.?????????電信網(wǎng)絡(luò)。

      a)????????電話網(wǎng)和蜂窩網(wǎng)絡(luò);

      b)????????互聯(lián)網(wǎng)等計(jì)算機(jī)網(wǎng)絡(luò)。

      c)?????????無線傳感器網(wǎng)絡(luò)。

      d)????????路由算法。

      2.?????????網(wǎng)絡(luò)應(yīng)用。

      a)????????萬維網(wǎng)和點(diǎn)對點(diǎn)網(wǎng)絡(luò);

      b)????????大型多人在線游戲和虛擬現(xiàn)實(shí)社區(qū)。

      c)?????????分布式數(shù)據(jù)庫和分布式數(shù)據(jù)庫管理系統(tǒng)。

      d)????????網(wǎng)絡(luò)文件系統(tǒng)。

      e)????????分布式緩存,如突發(fā)緩沖器。

      f)?????????分布式信息處理系統(tǒng),如銀行系統(tǒng)和航空預(yù)訂系統(tǒng)。

      3.?????????實(shí)時過程控制。

      a)????????飛機(jī)控制系統(tǒng)。

      b)????????工業(yè)控制系統(tǒng)。

      4.?????????并行計(jì)算。

      a)????????科學(xué)計(jì)算,包括集群計(jì)算、網(wǎng)格計(jì)算、云計(jì)算等。

      b)????????計(jì)算機(jī)圖形學(xué)中的分布式渲染。

      6??????分布式系統(tǒng)的優(yōu)缺點(diǎn)

      6.1????分布式系統(tǒng)的優(yōu)點(diǎn)

      分布式系統(tǒng)的一些優(yōu)點(diǎn)如下:

      1.?????????分布式系統(tǒng)中的所有節(jié)點(diǎn)都是相互連接的。所以節(jié)點(diǎn)可以很容易地與其他節(jié)點(diǎn)共享數(shù)據(jù)。

      2.?????????更多的節(jié)點(diǎn)可以很容易地添加到分布式系統(tǒng)中,即可以根據(jù)需要進(jìn)行擴(kuò)展。

      3.?????????一個節(jié)點(diǎn)的故障不會導(dǎo)致整個分布式系統(tǒng)的失敗。其他節(jié)點(diǎn)仍然可以相互通信。

      4.?????????打印機(jī)等硬件資源可以與多個節(jié)點(diǎn)共享,而不是只限于一個節(jié)點(diǎn)。

      6.2????分布式系統(tǒng)的缺點(diǎn)

      分布式系統(tǒng)的一些缺點(diǎn)如下:

      1.?????????在分布式系統(tǒng)中很難提供足夠的安全,因?yàn)楣?jié)點(diǎn)以及連接都需要安全。

      2.?????????一些消息和數(shù)據(jù)在從一個節(jié)點(diǎn)轉(zhuǎn)移到另一個節(jié)點(diǎn)時,可能會在網(wǎng)絡(luò)中丟失。

      3.?????????與單用戶系統(tǒng)相比,連接到分布式系統(tǒng)的數(shù)據(jù)庫是相當(dāng)復(fù)雜和難以處理的。

      4.?????????如果分布式系統(tǒng)的所有節(jié)點(diǎn)都試圖同時發(fā)送數(shù)據(jù),網(wǎng)絡(luò)中可能會出現(xiàn)過載現(xiàn)象。

      7??????參考

      https://blog.stackpath.com/distributed-system/

      https://www.freecodecamp.org/news/a-thorough-introduction-to-distributed-systems-3b91562c9b3c/

      https://en.wikipedia.org/wiki/Distributed_computing

      https://www.confluent.io/learn/distributed-systems/

      分布式 架構(gòu)設(shè)計(jì)

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:如何用QQ郵箱發(fā)送給他人(怎么用發(fā)qq郵箱給別人)
      下一篇:轉(zhuǎn)換繁體字(轉(zhuǎn)換繁體字在線)
      相關(guān)文章
      国产AV无码专区亚洲AV琪琪| 亚洲精品无码久久久久秋霞| 亚洲国产成人精品无码区二本 | 亚洲免费福利视频| 91亚洲va在线天线va天堂va国产 | 亚洲精品无码日韩国产不卡?V | 亚洲伊人久久综合中文成人网| 亚洲国产成人无码AV在线 | 亚洲欧洲日韩国产综合在线二区| 亚洲国产精品成人久久| 亚洲AV乱码一区二区三区林ゆな| 亚洲精品成人片在线播放 | 亚洲国产成人精品无码区二本| 亚洲国产精品无码观看久久| 亚洲AV永久无码精品一福利| 亚洲AV无码一区二区乱子仑| 国产天堂亚洲国产碰碰| 亚洲精品久久久www| 国产亚洲精品无码专区| 国产成人精品日本亚洲专区61| 国产亚洲成av人片在线观看| 亚洲av无码成人黄网站在线观看| 亚洲福利在线观看| 亚洲色图.com| 亚洲深深色噜噜狠狠网站| 亚洲AV无码一区二区一二区| 337P日本欧洲亚洲大胆艺术图 | 另类图片亚洲校园小说区| 亚洲一级特黄大片无码毛片| 亚洲熟妇av一区二区三区漫画| 国产亚洲精品xxx| 亚洲自偷自拍另类12p| 亚洲国产精品网站久久| 亚洲性无码一区二区三区| 亚洲AⅤ男人的天堂在线观看| 亚洲麻豆精品国偷自产在线91| 亚洲日本乱码在线观看| 精品亚洲A∨无码一区二区三区 | 中文字幕亚洲第一| 亚洲国产美国国产综合一区二区| 亚洲精品在线播放|