用于數據傳送的TCP?
依賴于高可用性應用程序的企業應該采用雙活數據中心設計,以確保可靠性和彈性。而運行高可用性應用程序的企業都必須回答以下基本問題:當底層通信基礎設施不再可靠時,將如何創建具有彈性的應用程序架構?
彈性應用程序體系結構
隨著云計算的廣泛采用,設計系統以使用一個內部數據中心和一個基于云計算的數據中心是很誘人的。
另一種選擇是考慮軟件定義的WAN等技術,通過使用來自不同提供商的多個鏈路來增加路徑多樣性。此方法也適用于第三方應用程序。
獨角獸公司的經驗教訓
例如,客戶端可以使用具有通過域名系統學習的數據中心地址的循環列表的事務重傳計時器,也就是全局服務器負載平衡。客戶端將緩沖事務,直到它收到來自可訪問數據中心的確認。數據庫同步會將更新分發到其他實例,因此任何數據庫都可以處理這些事務。該架構允許組織部署多個應用程序數據庫系統。這種方法甚至可以擴展到訪問云計算基礎設施中的數據庫實例,如Amazon和Microsoft Azure。
傳輸控制協議(TCP)是為確保可靠的數據傳輸而設計的網絡機制。雖然傳輸控制協議(TCP)可以重試傳輸丟棄的數據包,但是當其中一個端點發生故障時,它無法保證數據傳輸。傳輸控制協議(TCP)會話在兩個端點的接口之間建立。如果其中一個端點(服務器或其接口)出現故障,傳輸控制協議(TCP)會話將會終止。