日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

分布式系統(tǒng)詳解

 邸彥強 2022-06-19 發(fā)布于河北

什么是分布式系統(tǒng)

“分布式系統(tǒng)就是若干的獨立的計算機的集合,而這些計算機對于用戶來講就是單個計算機系統(tǒng)”

這其中有兩個比較關鍵的點

  • 硬件獨立
  • 軟件統(tǒng)一

那么什么是硬件獨立呢?硬件獨立是指機器本身的獨立。一個大型的分布式系統(tǒng),是由若干的計算機組成。而軟件統(tǒng)一,是指對于用戶來講,在面對這些機器的時候就像是面對著一個系統(tǒng)一樣。就好比我們現在經常用到的各地的健康碼系統(tǒng),對于每個人來講,健康碼系統(tǒng)就是一個系統(tǒng),至于它背后是如何運作的、部署了幾臺服務器、每臺服務器都是干什么的,這些對于用戶來講都是不需要關心的。用戶只關心健康碼能不能用。

另外,軟件的統(tǒng)一是指分布式系統(tǒng)的擴展和升級都比較容易,分布式系統(tǒng)中的某些節(jié)點發(fā)生故障的時候并不會影響整體系統(tǒng)的可用性。用戶和應用程序交互的時候,用戶會感覺到某個節(jié)點的錯誤。

集中式系統(tǒng)與分布式系統(tǒng)

集中式系統(tǒng)主要是指一些部署在HP、IBM等小型機器上的服務器中的系統(tǒng)。其將所有的功能都部署到一個主服務器上。這個系統(tǒng)有一個特點就是宕機率很低。這種系統(tǒng)主要用在一些政府類、企業(yè)類部門。

這種集中式系統(tǒng)主要流行于20世紀,現在有些企業(yè)或者是政府部門使用的這種系統(tǒng)都是沿用原來的軟件。這種系統(tǒng)最大的特點就是便于維護、操作簡單。但這種系統(tǒng)有個最大的問題就是不出問題還好,一出問題就會造成很大的故障。所有的功能都不能用了。另外這種集中式的系統(tǒng)相關的技術體系都是被少數廠商掌握在手中。這或許也是阿里為什么要去IOE的原因,就是不想依賴與HP、IBM等一些國外的企業(yè)。

文章圖片1

分布式系統(tǒng)則通過中間件技術對現有的計算機的硬件能力和軟件能力進行重新的資源整合。是一種多處理器的計算機系統(tǒng),各處理器通過網絡構成了統(tǒng)一的系統(tǒng)。系統(tǒng)采用分布式計算架構。將原來的中央處理器處理的任務分給各個對應的處理器進行處理。實現不同功能不同的處理器處理,這些處理器之間相互協(xié)調,共享系統(tǒng)資源,加快了系統(tǒng)的處理時間和處理速度,同樣簡化了主機的處理邏輯。如圖所示。

文章圖片2

如何設計分布式系統(tǒng)?

設計分布式系統(tǒng),其本質工作就是以一種合理的方式將大的系統(tǒng)拆分成小的系統(tǒng),并且部署到不同的機器上。所以這樣做第一個需要解決的問題就是如何進行系統(tǒng)拆分。因為是將一個大系統(tǒng)進行拆分,所以說各個子系統(tǒng)是不可能獨立存在的,勢必要通過網絡的方式進行交互。所以這些系統(tǒng)之間的交互就變得尤為重要。既然要進行子系統(tǒng)的交互那么就需要這些子系統(tǒng)之間能相互識別。這樣可以防止信息被攔截,信息被篡改等問題。既然需要進行系統(tǒng)拆分,那么不得不考慮的一點就是系統(tǒng)的擴展性問題。概括起來就是如下一些問題。

  • 如何將系統(tǒng)拆分成子系統(tǒng)?
  • 如何規(guī)劃子系統(tǒng)之間的通信?
  • 如何考慮通信過程中的安全問題?
  • 如何進行系統(tǒng)擴展
  • 如何高正高可用?
  • 如何保證數據一致性?

分布式系統(tǒng)面臨的挑戰(zhàn)

分布式系統(tǒng)最難的點就是如何進行設計?設計好之后如何進行實施?實施之后如何進行管理。因為引入眾多機器,所以造成的系統(tǒng)復雜性提升。使得遇到一個問題之后,問題的查找就成了最大的問題。另外就是如何保證高可用?

  • 差異性:由于分布式系統(tǒng)是基于不同的OS環(huán)境、不同的網絡環(huán)境、不同的編程語言所構建的,所以就必須用一種統(tǒng)一的協(xié)議將其聯(lián)通起來,不然做分布式系統(tǒng)也就沒有意義了。一般就通過中間件技術來處理系統(tǒng)差異。
  • 一致性:在分布式系統(tǒng)中,數據被拆分到不同的機器上進行處理,那么如何保證各個機器之間的數據一致性就成了分布式系統(tǒng)最大的問題。
  • 故障的獨立性:這個有點類似于分區(qū)容錯,在整個的分布式系統(tǒng)的所有部分都有可能發(fā)生故障,一般來講,分布式系統(tǒng)是允許出現故障的,但是出現故障之后不能影響整個系統(tǒng)的正常使用。
  • 并發(fā)問題:由于分布式系統(tǒng)各個系統(tǒng)之間的資源是共享的,所以說每個系統(tǒng)的資源都必須在并發(fā)環(huán)境下是安全的。不會出現線程安全問題。
  • 不可見性:分布式系統(tǒng)中任何組件的故障、或者是升級操作,對于用戶來講都是不可見的。
  • 開放性:由于分布式系統(tǒng)是由不同的程序員來開發(fā),組件最終要集成到一個大的系統(tǒng)中,所以組件的發(fā)布規(guī)范、接口規(guī)范都必須是相互之間能夠被理解的。
  • 安全性:對于共享資源進行加密保護,在網絡之間傳遞的信息都需要進行加密保護。
  • 可擴展性:分布式系統(tǒng)的設計要預留對于功能、業(yè)務邏輯的擴展內容。

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多