DNS負載均衡
實現:給域名添加多天A記錄(需域名服務商支持)
優勢:簡單快捷,性能極高,沒有資源耗費
缺點:權重不可設定、沒有故障切換、服務變動後瀏覽器在內的dns緩存生效問題nginx
七層負載均衡
實現:工做在應用層,包括 nginx
、HAProxy
等http
反向代理
優勢:故障切換、後端集羣高可用
缺點:代理自身的單點問題後端
四層負載均衡(IP負載均衡)
實現:工做在網絡層/傳輸層,基於IP/內容請求分發,包括 lvs
等
優勢:故障切換、高性能、高可用,比七層負載均衡性能更高
缺點:搭建複雜瀏覽器
HTTP重定向負載均衡
實現:302跳轉等,根據請求來源調度到對應服務器,可實現爲城市分站的負載均衡策略
優勢:實現簡單
缺點:url變更、體驗較差緩存
硬件負載均衡
實現:四/七層負載均衡硬件設備
優勢:高性能、高可靠
缺點:價格昂貴安全
http節區下添加以下配置服務器
proxy_connect_timeout 30; #代理鏈接服務的超時 proxy_read_timeout 60; #代理等待服務的超時 proxy_send_timeout 30; #代理接收數據傳輸的超時 proxy_buffer_size 64k; #代理緩衝區大小 proxy_buffers 4 64k; #代理的緩衝區個數及最大值 proxy_busy_buffers_size 128k; #代理在高壓時段可申請的最大緩衝區大小 proxy_temp_file_write_size 256k; #代理的臨時寫文件大小 # 服務集羣配置 # 某臺服務器響應失敗則自動故障切換到另外一臺 upstream service_cluster1 #命名集羣 { # 權重根據具體服務器的資源狀況設定 server 192.168.0.100:80 weight=1 max_fails=2 fail_timeout=30s; server 192.168.0.101:80 weight=2 max_fails=2 fail_timeout=30s; } # 虛擬主機配置 server { server_name www.site.com; # 將全部請求反向代理到service_cluster1服務集羣 location / { proxy_pass http://service_cluster1; proxy_buffering off; # 禁用緩存,提升併發性能 # 客戶端IP透明通過代理服務器傳遞給後端Web服務器 proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 客戶端請求主機名透明通過代理服務器傳遞給後端Web服務器 proxy_set_header Host $host; } }