1. 程式人生 > >web負載均衡的多種解決方案

web負載均衡的多種解決方案

web load balancing,簡單地說就是給我們的伺服器叢集分配”工作任務“。

1.反向代理

反向代理服務的核心工作主要是轉發HTTP請求,因為它工作在HTTP層(應用層),也就是網路結構中的第七層,因此也被稱為”七層負載均衡“,可以做反向代理的軟體很多,比較常見的一種是Nginx。

對於同一個登入使用者的請求,無法保證一定分配到相同的Web機器上,會導致無法找到session的問題。解決方案主要有兩種:

(1)配置反向代理的轉發規則,讓同一個使用者的表求證 定落到同一臺機器上(通過分析cookie),複雜的轉發規則交會消耗更多多的CPU,也增加了代理伺服器的負載。

(2)將session這類的資訊,專門用某個獨立服務來儲存,例如redis/memcache,這個方案比較推薦。

反向代理服務,也是可以開啟快取,如果開啟了,會增加反向代理的負擔,需要謹慎使用。這種負載均衡策略實現和部署非常簡單,而且效能表現也比較好。但是,它有”單點故障“的問題,如果掛了,會帶來很多的麻煩。而且,到了後期web伺服器繼續增加,它本身可能成為系統的瓶頸。

某臺節點伺服器掛了,但是Nginx仍然可能選中這個出故障的機器,然後就一直連線著,因為超時時間很長,會有問題。

ps:代理其實就是一箇中介,A和B本來可以直連,中間插入一個C,C就是中介。剛開始的時候,代理多數是幫助內網client網server用的(比如HTTP代理),從內到外。後出現了反向代理,”反向“這個詞在這的意思其實是指方向相反,即代理將來自外網client的請求forward到內網server,從外到內。

2.IP負載均衡

工作在網路層(修改IP)和傳輸層(修改埠),比超工作在應用層效能要高出非常多,原理就是對IP層的資料包的IP地址和埠資訊進行修改,達到負載均衡的目的這種方式,也被稱不”四層負載均衡“。常見的負載均衡方式,是LVS(Linux Virtual Server)和IPVS(IP Virtual Server)來實現。

它的效能要比反向代理高出很多,但配置和搭建比較複雜。

3.DNS負載均衡

一個域名是可以配置成對應多個IP的,因此,DNS也就可以作為負載均衡服務。這種負載均衡效能極佳,配置簡單,但不能自定義規則,存在DNS生效延遲問題,機器故障問題。

4.DNS/GSLB負載均衡

我們常用的CDN(Content Delivery Network,內容分發網路)實現方式,其實就是在同一個域名遇敵為多IP的基礎上更進一步,通過GSLB(Global Server Load Balance)按照指定規則對映域名的IP。

這種方式,和前面的DNS負載均衡一樣,不僅效能極佳,而且支援配置我種策略。但是,搭建和維護成本非常高。

最後歡迎大家訪問我的個人網站:1024s​​​​​​​

相關推薦

nginx 負載均衡叢集解決方案 healthcheck_nginx_upstreams (一)

 該文章來源於網際網路,目前找不到原作者,放在這裡的目的是記錄 的安裝過程和相關配置,在起初安裝成功後不能夠正常執行healthcheck_nginx_upstreams,後通過閱讀原始碼和除錯,能夠正常執行。 不過資訊如下: *26 no live upstreams while connec

負載均衡叢集解決方案 Nginx

 Nginx是一個免費的,開源的,高效能的伺服器和反向代理伺服器軟體,同時它也可以為IMAP和POP3伺服器代理,以其高效能,穩定性,豐富的功能,結構簡單,低資源消耗的特性換來廣大運維者所喜愛。 Nginx與傳統的伺服器不同,不依賴執行緒來處理請求。相反,它使用一個更可

伺服器負載均衡整體解決方案

非持續性演算法(Non-Persistent): 一個客戶端的不同的請求可能被分配到一個實服務組中的不同的實伺服器上進行處理。主要有:輪循演算法、最少連線演算法、響應速度演算法等。 輪循演算法(Round Robin): 每一次來自網路的請求輪流分配給

web負載均衡多種解決方案

web load balancing,簡單地說就是給我們的伺服器叢集分配”工作任務“。 1.反向代理 反向代理服務的核心工作主要是轉發HTTP請求,因為它工作在HTTP層(應用層),也就是網路結構中的第七層,因此也被稱為”七層負載均衡“,可以做反向代理的軟體很多,比較常見

Ultimus BPM Web版本移動應用解決方案

BPM軟件 流程管理 Ultimus BPM Web版本移動應用解決方案 Web版本移動應用解決方案特點 提供手機審批配置平臺,用戶可選擇任意流程的任意節點進行手機審批。

Nginx負載均衡4種方案

nginx配置 another 服務器 nginx負載均衡 address 第一個 session 添加 後端 1、輪詢 輪詢即Round Robin,根據Nginx配置文件中的順序,依次把客戶端的Web請求分發到不同的後端服務器。 配置的例子如下:http{ up

移動端二三事【二】:移動端觸摸事件點透及多種解決方案

優化 提前 sta 屬性 lis 剛才 觸摸事件 功能 觸發 大家都知道的少說,多分享一些幹貨。 一、首先說移動端的三大主要事件: 1.手指按下: ontouchstart2.手指移動:ontouchmove3.手指擡起 ontouchend *使用移動端事件時,為盡

Web負載均衡實現方式(轉)

知識庫 由於 aid scale big 什麽是 二次 兩個 xiaomi Reference [1] https://www.cnblogs.com/eric-qin/p/7238278.html 負載均衡(Load Balance)是集群技術(Cluster)的一種應用

Haproxy+Nginx實現web負載均衡群集

10.10 syslog ble 沒有 rsyslog服務 AR 模擬 system rest Haproxy是目前比較流行的一種群集調度工具,同類群集調度工具有很多,如LVS和Nginx,相比較而言,LVS性能最好,但是搭建相對復雜,Nginx的upstream模塊支持群

常見的web負載均衡方法總結

順序 缺點 首頁 color 不同 做到 重要 將不 支持 Web負載均衡的方法有很多,下面介紹幾種常見的負載均衡方法。 1.用戶手動選擇方法 這是一種較為古老的方式。通過在主站首頁入口提供不同線路、不同服務器連接的方式,來實現負載均衡。這種方式在一些提供下載的網站中比較常

AWS考證方向:六、實現WEB負載均衡

god col ssh key .org c2c tps 系統類型 acf 分鐘 AWS上實現WEB負載均衡 1、創建實例 2、選擇系統類型和版本 3、選擇實例的類型規格,選擇完點擊下一步 4、配置實例的詳細信息,實現負載均衡要兩臺主機及以上 5、添加存儲,一般每臺主機的根

架構設計:負載均衡層設計方案負載均衡技術總結篇

error_log 基於 地址映射 高可用 lvs-dr模式 緩解 映射 node yum 前言 1、概述 通過前面文章的介紹,並不能覆蓋負載均衡層的所有技術,但是可以作為一個引子,告訴各位讀者一個學習和使用負載均衡技術的思路。雖然後面我們將轉向“業務層”和“業務通信”層的

Haproxy結合Nginx實現Web負載均衡群集

-a 根據 star rsyslog 客戶 net 出現 保護 建立 簡介 Haproxy是一個使用C語言編寫的自由及開放源代碼軟件,其提供高可用性、負載均衡,以及基於TCP和HTTP的應用程序代理。Haproxy特別適用於那些負載特大的web站點,這些站點通常又需要會話保

web網絡攻擊解決方案

插入字符 頁面 ntb 登錄 and 相對 引號 sql 語句 三方 產生原因 HTTP 不具備安全功能。 在客戶端可以篡改請求。 跨站腳本攻擊 XSS 攻擊方式: 通過提交的信息中帶入 js 腳本或 html 標簽。 提前閉合標簽,有些甚至不用特殊處理。 執行操作或

更換JDK導致eclipse的WEB專案爆紅--解決方案!肯定有效!

根本原因:     1.  專案所使用的JDK版本,與eclipse環境所使用的JDK,不一致!     2.  專案所使用的JDK版本,Tomcat的JDK版本,不一致!   總結:  

Tomcat啟動時報org.springframework.web.context.ContextLoaderListener錯誤解決方案

lean handler 轉載 現象 tail size enc fault new 問題現象:新從svn上檢出maven的項目maven+spring+springmvc項目在Tomcat啟動時,報如下錯誤。 嚴重: Error configuring appl

Web負載均衡技術

  Web負載均衡(Load Balancing),簡單地說就是給我們的伺服器叢集分配“工作任務”,而採用恰當的分配方式,對於保護處於後端的Web伺服器來說,非常重要。 負載均衡的策略有很多,我們從簡單的講起哈。 1. HTTP重定向 當用戶發來請求的時候,Web伺服器通過修改

WebApi跨域多種解決方案

關於WebAPI跨域踩到的一點坑 最近在嘗試前後端分離的WebAPI+AngularJS方案,在率先處理授權的時候,踩到了一點WebAPI跨域的坑,其實嚴格意義上來說也不算是坑吧,只是我自己對WebAPI不熟悉而已,這裡我與大家分享一下。 先說一下我這邊遇到的情況: 我是在做登入

nginx反向代理 本地 兩臺web負載均衡 使用ip+埠代理

環境: 本地外網ip:123.58.251.166 1、配置index.html網頁 [[email protected]-10-1-1-161 conf.d]# cat /web/sing/index.html <h1>www.test1.com</h1>

nginx反向代理 本地 兩臺web負載均衡 使用域名代理

環境: 本地外網ip:123.58.251.166 1、配置index.html網頁 [[email protected]-10-1-1-161 conf.d]# cat /web/sing/index.html <h1>www.test1.com</h1>