負載均衡 2 Nginx集群

2021-08-26 23:38:50 字數 1672 閱讀 2830

資料庫的一主多從跟伺服器集群很相似,乙個主資料庫下面有n多個從資料庫,從資料庫是唯讀的,只給伺服器返回查詢到的資料。

雙機熱備:只有一台機器在工作狀態,另一台機器只是待命的狀態。

負載均衡:每台機器都是在工作狀態。

雙機熱備概念:可互為備機,兩台伺服器上同時裝上keeplived(心跳檢測軟體),相互監測,其中一台伺服器怠機,另一台伺服器啟動。

nginx:

1.輕量級,占用資源少,處理請求是非同步非阻塞的,apache是阻塞的,在高併發下nginx 能保持低資源低消耗高效能 。占用cpu少。更快速。

2.nginx配置簡潔,apache複雜。

3.nginx負載能力比apache高很多。

1.開啟cmd 輸入 start nginx ,啟動nginx程序。

2.在 conf目錄下,開啟nginx.conf配置檔案、

nginx用到的多執行緒模式:master-worker模式(乙個主伺服器,多個從伺服器)

如下配置:

#伺服器的集群

#如上所示,配置了兩台tomcat伺服器,nginx作為均衡負載**的作用。

上面的 jpg | png。。是對靜態資源的配置,它會將靜態資源儲存在本地的nginx伺服器,減少伺服器之間的頻寬以及讀寫速度。

乙個執行緒通常具有五種狀態。

1.新生 –>就緒:通過呼叫start()方法。

2.就緒 –>執行:就緒狀態的執行緒一旦得到cpu,就進入執行狀態並自動呼叫run()方法。

3.執行 –>阻塞:處於執行狀態的執行緒,執行sleep()方法,或等待i/o裝置資源,讓出cpu並暫時中止自己執行,進入阻塞狀態。

4.阻塞 –>就緒:睡眠時間到,或等待的i/o裝置空閒下來,執行緒便進入就緒狀態,重新到就緒佇列中等待cpu,當再次獲得cpu時,從之前中止的地方開始繼續執行。

5.執行 –>死亡:(1)(正常狀況下)執行緒任務完成

(2)(非正常情況)執行緒被強制中止,如執行stop()或destroy()方法來終止乙個執行緒。

wait() :釋放鎖

sleep():不釋放鎖

阻塞狀態:當web伺服器如tomcat處理大量請求時,會頻繁進行磁碟io讀寫操作,cpu輪詢時會使執行狀態的請求進入「阻塞」狀態,這就是阻塞產生的原因。

把整個過程切換成小的任務,通過任務間協作完成,由乙個專門的執行緒來處理所有io事件,並負責分發。

事件驅動機制:事件時間到了就觸發, 而不是同步的去監視事件。

執行緒通訊:執行緒之間通過wait,notify等方式通訊。保證每次上下文切換都是有意義的,減少無畏的程序切換。

該模式是用來處理高併發的一種設計模式

master-worker模式是常用的並行模式之一,它的核心思想是,系統由兩個程序協同工作:master程序,負責接收和分配任務;worker程序,負責處理子任務。當worker程序將子任務處理完成後,結果返回給master程序,由master程序做歸納彙總,最後得到最終的結果。

同一時刻只有乙個worker建立連線,用到了鎖的概念來保證只有乙個worker處理請求。採用多執行緒好處,如果乙個worker掛掉,對於其他沒有影響。

安裝linux學習六(2) nginx負載均衡

nginx s stop quick exit nginx s quit graceful quit nginx s reload changing configuration,starting a new worker,quitting an old worker gracefully nginx...

Nginx 集群負載均衡器

實驗環境 1.file storage 伺服器安裝 yum y install nfs utils2.配置nfs並建立共享目錄 vim etc exports 3.開啟自啟動 systemctl enable rpcbind systemctl enable nfs server systemctl...

Web集群 Nginx 負載均衡實戰

三颱虛擬機器 roel hostname ip 說明 proxy host node 1 192.168.74.153 nginx 主機 web server 1 node 2 192.168.74.162 web伺服器1 web server 2 node 3 192.168.74.163 web...