高可用設計
負載均衡
-
冗餘設計:建立服務器羣集,通過冗餘的方式可以避免架構中出現單點故障。
-
負載分發:有多個服務器可以響應同種請求時,引入負載均衡可以將請求合理分配到不同
服務器中。
-
容錯機制:服務器運行異常時,並將訪問請求轉移到其它可以正常工作的服務器上的服務
器上,從而提高服務器組的可靠性。
網絡基礎
• 公網接口的高可用網絡設計
• 兩地三中心的高可用網絡設計
彈性伸縮
-
可擴展性:根據在特定時間發生的負載來增加或減少資源。
-
容錯機制:有服務器出現故障時,彈性伸縮組會自動複製出健康的實例,以替換狀態異常
的實例
無服務器雲函數:只需執行代碼
-
可擴展性:在無服務器環境中,系統根據當前的負載自動擴展應用程序以滿足用戶需求的 能力。
-
容錯機制:自動地在地域內的多個可用區部署,提供極高的容錯性
負載均衡是啥?
負載均衡由哪些模塊構成
應用場景及特性?
CLB的性能
負載均衡單集羣提供超過 1.2 億 的最大連接數,輕鬆應對億級 Web 業務訪問量。 負載均衡單集羣可處理峯值 40Gb/s 的流量,每秒處理包量(PPS)可達 600 萬。
四層負載均衡
- CLB最早實現的方案,也是作爲一款負載均衡產品必備的功能。基本原理將一系列內部IP映射爲一個虛擬IP(VIP),每次 TCP連接請求動態使用其中一個內部IP地址。
- 四層的負載均衡,就是通過三層的IP地址(VIP),然後加四層的端口號,來決定哪些流量需要做負載均衡,對需要處理的流量進行NAT處理,轉發至後臺服務器。
- 典型架構
• 後端服務器綁定到監聽器
• 監聽器設置轉發端口和權重
• 監聽器設置會話保持,健康檢查
七層負載均衡
- 在四層的基礎上,再考慮應用層的特徵(如HTTP頭部、URL等),通過檢查流經的HTTP報頭, 根據報頭內的信息來執行負載均衡任務。
- 比如同一個Web服務器的負載均衡,除了根據VIP加80端口辨別是否需要處理的流量,還可根據七層的URL、瀏覽器類別、語言來決定是否要進行負載均衡。
- 典型架構
• 後端服務器綁定到轉發組
• 轉發組設置轉發端口和權重
• 轉發組設置會話保持、健康檢查
• 支持多域名轉發功能
健康檢查 可能因爲4層檢查,關閉了一些服務,導致7層獲取數據保存,顯示會話被關閉。
ping linux 使用ICMP協議,windows如果併發會話數過多可能會拒絕,可能導致服務無法進行。
雲解析:是最簡單的負載均衡實現,通過DNS進行兩個IP的自動輪詢,付費版支持4個IP。
案例:
可拓展的雲服務
AS彈性伸縮
-
彈性伸縮(Auto Scaling,AS)爲您提供高效管理計算資源的策略。可設定時間週期性地執行管理策略或創建實時監控策略,來管理 CVM 實例數量。在需求高峯時,彈性伸縮自動增加 CVM 實例數量,以保證性能不受影響;當需求較低時,則會減少 CVM 實例數量以降 低成本。彈性伸縮策略讓集羣保持恰到好處的實例數量。
-
彈性伸縮只能對CVM使用。
應用場景:
- 業務波動超過應用負載
- 電商大促、限時秒殺活動
- 在線遊戲,晚上20:00-24:00的使用高峯 視頻網站、播放熱門直播
業務突增時怎麼快速增加資源保證應用正常運轉?
在業務低谷怎麼快速回收資源,降低成本?
部分應用節點故障時怎麼保證應用可用且保持業務負載能力?
彈性伸縮 :自動按需擴展,自動替換故障節點
伸縮策略 與拓展方式的結合:
定時:可以在業務高峯低谷時,進行定時。 結合自動擴展
告警:設定閾值,進行預警,建議預先進行。常結合手動拓展。
無狀態服務
無狀態服務(stateless service)對單次請求的處理,不依賴其他請求,
• 也就是說,處理一次請求所需的全部信息,要麼都包含在這個請求裏
• 要麼可以從外部獲取到(比如說數據庫),服務器本身不存儲任何信息
有狀態服務(stateful service)則相反,它會在自身保存一些數據,先後的請求是有關聯的
無狀態服務器具有以下特點:
- 並不保存客戶請求的數據(狀態)
- 客戶在請求時需要攜帶額外的狀態數據
- 無狀態服務器更加健壯,重啓服務器不會丟失狀態信息,這使得維護和擴容更加簡單
SCF 無服務器雲函數 也是服務解耦的一部分。
無服務器雲函數 SCF 簡介
無服務器雲函數(Serverless Cloud Function,SCF)是騰訊云爲企業和開發者們提供的無服務器執行環境。SCF 是實時文件處理和數據處理等場景下理想的計算平臺。
無服務器雲函數
-
雲函數更適合於支持微服務架構業務場景,由事件觸發的應用。以圖片多規格壓縮服務爲例, 該服務在用戶上傳圖片至COS時,自動將原始圖片壓縮成適配手機、平板、電腦等多種大小 的規格。如利用雲函數實現該服務,用戶只需創建函數,定義函數觸發條件爲“圖片上傳”, 在線編輯或使用IDE完成代碼編寫後上傳,服務即構建完成。用戶上傳圖片時,自動調用定義 的函數完成圖片的多規格壓縮,雲函數平臺根據上傳併發量自動擴縮容函數實例,並最終按照 實際調用消耗計費。
-
雲函數的高可用:如果某個可用區因災害或電力故障等導致癱瘓,無服務器雲函數 SCF 會自 動地選擇其他可用區的基礎設施來運行,免除單可用區運行的故障風險。由事件觸發的工作負 載可以使用雲函數來實現,利用不同雲服務滿足不同的業務場景和業務需求,使得服務架構更 加健壯。
邊緣函數:
將無服務器雲函數調度到自有設備上按需運行提供消息能力,實現雲 - 端的消息交互、斷網時的緩存
-
運行在本地,利用本地閒置資源計算
-
在自有的設備上運行應用,管理、轉 發和緩存消息,實現邊緣設備與雲的 結合
-
靠近數據源,快速響應計算