分散式系統原理---CBCAST演算法
ISIS中定義了三種通訊原理ABCAST,CBCAST,GBCAST。ABCAST提供鬆散同步通訊,用於向組成員傳送訊息;CBCAST提供虛擬同步通訊,也用於向組成員傳送訊息;GBCAST與ABCAST類似,用於管理組內成員而不傳送普通資料。
由於分散式考試的需要,這篇bolg主要結合考試題介紹CBCAST演算法的主要解題步驟。
對於CBCAST演算法而言,決定各個程式對到來的訊息是接收還是等待,如果同時滿足以下兩個條件就是接收,否則等待:
假設 是傳送方向量中的地 位, 是接收方向量的第 位,假設訊息由 (程式)傳送:
(1)需要滿足 = ;
(2)對所有的 (),有 。
eg1:對於下列表格表示的程式,由程式1向其他的程式傳送訊息,此時刻,哪些程式需要等待,哪些進行可以接收訊息。
解:對於此題,需要分別分析兩個條件是否滿足。
對於條件(1):訊息由程式1傳送,則首先需要滿足
也就是對於每個程式的第一維資料(4,3,3,3,2,3)而言,4=3+1,所以可以看出程式5不能接收訊息,需要等待,其餘程式均滿足條件(1)。
對於條件(2):訊息由程式1傳送,則需要滿足 (即所有程式排除第一維資料),有
所以對於1-6這幾個程式而言,排除第一維資料後,其餘的資料都需要比程式1的各維資料相等或更大,所以可以看出對於程式3而言5<6,所以程式3不能接收訊息,需要等待。
綜上兩個條件,程式3,5需要等待,其餘程式均可同時滿足條件(1)(2),所以可以接收程式1傳送的訊息。
eg2:
對於此題,類比上面的解法,就是程式1,4,5需要等待;3,6可以接收訊息。
相關文章
- 分散式之系統底層原理分散式
- 分散式系統Paxos演算法分散式演算法
- 分散式系統CAP的原理介紹分散式
- 分散式系統的Raft演算法分散式Raft演算法
- 分散式系統選舉演算法剖析分散式演算法
- 分散式系統原理--日誌技術Redo Log分散式
- 分散式系統分散式
- 分散式系統之Raft共識演算法分散式Raft演算法
- 分散式系統2:分散式系統中的時鐘分散式
- 分散式系統:系統模型分散式模型
- 分散式 - 分散式系統的特點分散式
- 分散式系統(三)——分散式事務分散式
- 分散式系統限流演算法分析與實現分散式演算法
- [分散式]分散式計算系統淺析分散式
- 分散式爬蟲原理之分散式爬蟲原理分散式爬蟲
- 分散式系統的跟蹤系統分散式
- 分散式圖片系統分散式
- 分散式系統(二)——GFS分散式
- 分散式系統基礎分散式
- 分散式檔案系統分散式
- 冰激凌和分散式系統分散式
- 關於分散式系統分散式
- 分散式系統硬體資源池原理和接入實踐分散式
- 大型分散式系統現場,阿里大牛帶你實戰分散式系統分散式阿里
- 幽默!分散式系統共識演算法的三階段分散式演算法
- 分散式系統的共識(consensus)演算法比較分散式演算法
- 分散式:分散式系統下的唯一序列分散式
- 什麼是分散式系統!以及分散式系統架構的優缺點!分散式架構
- HDFS分散式檔案系統分散式
- 分散式檔案系統-HDFS分散式
- 我理解的分散式系統分散式
- 分散式系統:向量時鐘分散式
- 什麼是分散式系統分散式
- Kafka 分散式訊息系統Kafka分散式
- 典型分散式系統分析:Dynamo分散式
- 分散式系統設計策略分散式
- 分散式檔案系統---GlusterFS分散式
- 分散式系統程式設計分散式程式設計