2.分佈式面臨的問題(ZooKeeper手記)
原創
陸永劍講師
2018-09-12 05:21
1.環境問題
- 通信異常
分佈式系統將原有的單機通信,變爲各個節點依賴網絡進行通信,由於網絡本身的不可靠性,都會導致分佈式系統無法順利的完成一次網絡通信。即使完成了一次通信,我們也要考慮時間上的延遲。
- 網絡分佈(腦裂)
分佈式系統部分網絡延遲增大,導致只有部分節點之間可以正常通信,這些局部小集羣會獨立完成原本需要整個分佈式系統才能完成的功能,包括對數據的事務處理,對分佈式的一致性有很大影響。
- 三態
成功、失敗和超時(比單機操作會多一個超時的狀態)。
- 節點故障
服務器節點出現的宕機或者僵死的現象。
2.數據問題
- 事務
對系統中數據進行訪問與更新的操作所組成的一個程序執行邏輯單元。事務具備原子性、一致性、隔離性、持久性。簡稱事務的ACID特性。
- 原子性
事務中各項操作要麼 全部執行成功,要麼全不執行
- 一致性
執行的過程中不能破壞數據庫中數據的完整性。
- 隔離性
併發的事務是相互隔離的。一個事務的執行,不能被其他的事務干擾。
- 持久性
事務一旦提交,對數據庫中數據的變更就是永久性的。