高并发系统搭建:web负载均衡
高并發系統搭建:web負載均衡
所謂的負載均衡就是讓多個請求盡量均衡的分配到不同的機器上面去
1. HTTP負載均衡
當用戶的請求發來之后,web服務器通過修改HTTP響應報頭中的Location標記,返回一個新的url,然后瀏覽器繼續請求這個新的url,實際上就是頁面重定向。重定向有一個3開頭的返回碼,然后在 在響應報頭中的location中記錄了重定向之后的url
缺點:在訪問量很大的情況下,這種方式是不行的,增加了 網絡的延時
- 反向代理負載均衡(工作在第七層)
反向代理的核心工作就是轉發HTTP請求,比較常見的一種就是Nginx服務器,他可以將從用戶那里得到的請求轉發給后臺的若干個服務器器中的一個
問題:session數據,因為Nginx反向代理的時候,無法保證分配的服務器是同一個服務器,這樣子用戶登錄的時候,如果多次操作的時候Nginx沒有分配到同一個服務器,就導致了 無法找到session的問題
解決:配置反向代理的轉發 規則上面,可以讓同一個用戶請求落到同一個機器上面,通過分析cookie,但是會增加代理服務器的負擔
方法二:將session的 信息,通過某個專門的服務器來存儲
IP負載均衡(網絡層和傳輸層)
服務器通過修改IP數據報的IP地址和端口信息進行修改,IP負載均衡服務器會修改用戶的IP和端口信息,然后原封不動的將數據轉發到內部的網絡上面去DNS負載均衡
域名解析服務,一個域名可以配置多個IP,當解析的時候,可以將一個url分配到多個IP上面,
問題:變更映射的IP或者是機器故障的 時候很麻煩,還存在DNS延遲的問題DNS/GSLB負載均衡
其實就是在同一個域名映射多個IP的基礎上面實現,通過GSLB全局負載均衡按照指定的規則映射域名的IP,一般情況 下就是按照用戶的地理位置,將距離用戶最近的IP返回給用戶,從而減少網絡的跳躍消耗。
CDN類似于一個緩存服務器
總結
以上是生活随笔為你收集整理的高并发系统搭建:web负载均衡的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于timewait状态
- 下一篇: 高并发简单设计