莊周夢蝶

          生活、程序、未來
             :: 首頁 ::  ::  :: 聚合  :: 管理

          關于網絡的錯誤假設

          Posted on 2009-05-02 13:02 dennis 閱讀(1797) 評論(0)  編輯  收藏 所屬分類: 計算機科學與基礎
          每個第一次構建分布式系統的人都可能會做出8個錯誤的對網絡的假設:
          1. The network is reliable
          2. Latency is zero
          3. Bandwidth is infinite
          4. The network is secure
          5. Topology doesn't change
          6. There is one administrator
          7. Transport cost is zero
          8. The network is homogeneous

          翻譯過來就是:
          1、網絡是穩定可靠的
          2、沒有延遲
          3、帶寬無限
          4、網絡是安全的
          5、網絡拓撲不會改變
          6、只有一個管理員
          7、傳輸成本為0
          8、網絡是均勻的,現實是各種網絡環境都有。

          更多錯誤假設:
          1、網絡IO跟磁盤IO一樣
              網絡IO比之磁盤IO更不可預測、不可靠和不可控,網絡IO包括了軟硬件兩方面的限制。
          2、你與對端能夠同步
            你無法假設對端是否關閉、接收到數據,這些通常需要你在應用協議里同步。
          3、所有的錯誤都可以被檢測到。
              很多錯誤例如對端關閉引起的讀阻塞都需要應用層來處理。

          4、資源無限可用。
          5、應用可以無限等待一個遠程服務
              任何大規模的應用都需要慎重設計超時、過期策略

          6、遠程服務總能響應及時。
          7、只有單點失敗
          8、只有一個資源分配器
          9、只有一個時間,也就是全局時間的問題。

          主站蜘蛛池模板: 东方市| 四平市| 滕州市| 平阴县| 乐山市| 吴桥县| 项城市| 淳安县| 镇沅| 龙井市| 平舆县| 靖宇县| 喜德县| 南陵县| 汤阴县| 南木林县| 喀什市| 建平县| 中阳县| 凌源市| 孝义市| 镇宁| 乡宁县| 万山特区| 芒康县| 郁南县| 沈丘县| 延庆县| 高雄市| 江津市| 蚌埠市| 江孜县| 海门市| 武威市| 普陀区| 河源市| 正定县| 永修县| 大渡口区| 永清县| 肥东县|