負載均衡的功能
- 對業務請求做出初步分析,決定是否將請求分發至WEB服務器
- 提供路由算法
- 限流,對於一些高併發情況下需要限流。對於請求過多時,可以友好的提示客戶系統繁忙,請稍後再試,從而保證系統持續可用
負載均衡在系統設計中的使用
1.水平分法(按照業務劃分)
按照業務功能進行劃分,使得業務之間相互隔離,降低數據的複雜性。如圖所示:
2.垂直分法
垂直分法就是講一個很大的請求量,不按照子系統劃分,而是將他們按照互不相干的幾個同樣的系統分攤請求,如圖所示:
3.垂直分法和水平分法的結合使用
先進性水平劃分,然後在進行垂直劃分,如圖所示:
負載均衡在數據庫中的使用
在數據庫中常常採用分表分庫等常見手段來實現負載均衡
- 分表:分表主要是將一張表的內容拆分成多個表,拆分條件則可以是時間段,地區等等方面考慮拆分
- 分庫:分庫則是將表存放在不同的數據庫中,前提是需要使用路由算法來確定數據存放於哪個庫中,這樣才能在需要的時候進行查詢。
總結
負載均衡總的說來就是將一些高請求量進行引流,不至於由於高請求量導致系統崩潰。其中實現的方式則是有非常非常多相關技術。都值得我們細細思考,推敲。