[TOC]
ecs進階6天 day3
slb負載均衡
架構
負載均衡服務主要有三個核心概念:
負載均衡執行個體 (Server Load Balancer instances)
一個負載均衡執行個體是一個運作的負載均衡服務,用來接收流量并将其配置設定給後端伺服器。要使用負載均衡服務,您必須建立一個負載均衡執行個體,并至少添加一個監聽和兩台ECS執行個體。
監聽 (Listeners)
監聽用來檢查用戶端請求并将請求轉發給後端伺服器。監聽也會對後端伺服器進行健康檢查。
後端伺服器(Backend Servers)
一組接收前端請求的ECS執行個體。您可以單獨添加ECS執行個體到伺服器池,也可以通過虛拟伺服器組或主備伺服器組來批量添加和管理。
優勢
高可用
采用全備援設計,無單點,支援同城容災。搭配DNS可實作跨地域容災,可用性高達99.95%。
根據應用負載進行彈性擴容,在流量波動情況下不中斷對外服務。
可擴充
您可以根據業務的需要,随時增加或減少後端伺服器的數量,擴充應用的服務能力。
低成本
與傳統硬體負載均衡系統高投入相比,成本可下降60%。
安全
結合雲盾,可提供5Gbps的防DDOS攻擊能力。
實踐
- nginx反向代理
代理在網絡中使用是比較常見的,比如ss、藍燈等這些大家常用的軟體,他們就是能改代理大家通路國内無法通路的一些國外網站,比如facebook、YouTube等網站。其原理也比較簡單:
1)使用者将請求發給代理伺服器
2)代理伺服器代使用者去通路資料
3)代理伺服器将資料給使用者
- 原理
1) 用戶端通過浏覽器 發起請求 代理伺服器
2)代理伺服器 接受請求
3) 代理伺服器 發起請求 業務伺服器
4)業務伺服器 接受請求
5)業務伺服器 處理請求
6) 業務伺服器 響應請求 代理伺服器
7)代理伺服器 響應請求 用戶端
8)用戶端通過浏覽器渲染請求并展示給使用者
- 反向代理實作
proxy_pass: nginx反向代理指令
反向代理實作
location / {
index index.php index.html index.htm; #定義首頁索引檔案的名稱
proxy_pass http://mysvr ;#請求轉向mysvr 定義的伺服器清單
}
- 反向代理優化
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m; #允許用戶端請求的最大單檔案位元組數
client_body_buffer_size 128k; #緩沖區代理緩沖使用者端請求的最大位元組數,
proxy_connect_timeout 90; #nginx跟後端伺服器連接配接逾時時間(代理連接配接逾時)
proxy_send_timeout 90; #後端伺服器資料回傳時間(代理發送逾時)
proxy_read_timeout 90; #連接配接成功後,後端伺服器響應時間(代理接收逾時)
proxy_buffer_size 4k; #設定代理伺服器(nginx)儲存使用者頭資訊的緩沖區大小
proxy_buffers 4 32k; #proxy_buffers緩沖區,網頁平均在32k以下的話,這樣設定
proxy_busy_buffers_size 64k; #高負荷下緩沖大小(proxy_buffers*2)
proxy_temp_file_write_size 64k; #設定緩存檔案夾大小,大于這個值,将從upstream伺服器傳