1. 程式人生 > >負載均衡的幾種演算法和快取的幾種淘汰策略

負載均衡的幾種演算法和快取的幾種淘汰策略

一、負載均衡演算法

1、輪詢法

  將請求按順序輪流地分配到後端伺服器上,它均衡地對待後端的每一臺伺服器,而不關心伺服器實際的連線數和當前的系統負載。

2、隨機法
通過系統的隨機演算法,根據後端伺服器的列表大小值來隨機選取其中的一臺伺服器進行訪問。由概率統計理論可以得知,隨著客戶端呼叫服務端的次數增多,其實際效果越來越接近於平均分配呼叫量到後端的每一臺伺服器,也就是輪詢的結果。

3、源地址雜湊法(一致性hash演算法)
源地址雜湊的思想是根據獲取客戶端的IP地址,通過雜湊函式計算得到的一個數值,用該數值對伺服器列表的大小進行取模運算,得到的結果便是客服端要訪問伺服器的序號。採用源地址雜湊法進行負載均衡,同一IP地址的客戶端,當後端伺服器列表不變時,它每次都會對映到同一臺後端伺服器進行訪問。

4、加權輪詢法

  不同的後端伺服器可能機器的配置和當前系統的負載並不相同,因此它們的抗壓能力也不相同。給配置高、負載低的機器配置更高的權重,讓其處理更多的請求;而配置低、負載高的機器,給其分配較低的權重,降低其系統負載,加權輪詢能很好地處理這一問題,並將請求順序且按照權重分配到後端。

5、加權隨機法
與加權輪詢法一樣,加權隨機法也根據後端機器的配置,系統的負載分配不同的權重。不同的是,它是按照權重隨機請求後端伺服器,而非順序。

6、最小連線數法
最小連線數演算法比較靈活和智慧,由於後端伺服器的配置不盡相同,對於請求的處理有快有慢,它是根據後端伺服器當前的連線情況,動態地選取其中當前積壓連線數最少的一臺伺服器來處理當前的請求,儘可能地提高後端服務的利用效率,將負責合理地分流到每一臺伺服器

二、快取的淘汰策略

1.FIFO(First In First out):先進先出,淘汰最先近來的頁面,新進來的頁面最遲被淘汰,完全符合佇列。

2.LRU(Least recently used):最近最少使用,淘汰最近不使用的頁面

3.LFU(Least frequently used): 最近使用次數最少, 淘汰使用次數最少的頁面

參考1
參考2

相關推薦

負載均衡演算法快取淘汰策略

一、負載均衡演算法 1、輪詢法   將請求按順序輪流地分配到後端伺服器上,它均衡地對待後端的每一臺伺服器,而不關心伺服器實際的連線數和當前的系統負載。 2、隨機法 通過系統的隨機演算法,根據後端伺服器的列表大小值來隨機選取其中的一臺伺服器

05 識別毒酒——演算法編碼方式的分析比較

說明 問題 識別毒酒 方法1 視為一個有約束的最優化問題進行求解 1 模型的進一步討論 3方法2 使用編碼的方法 1 結論 2 具體方法 3一個瑕疵和改進的方法

Nginx配置之負載均衡、限流、快取、黑名單灰度釋出

一、Nginx安裝(基於CentOS 6.5) 1.yum命令安裝 yum install nginx –y (若不能安裝,執行命令yum install epel-release) 2. 啟動、停止和重啟 service nginx start service nginx stop

RSA演算法的C++string實現(模冪演算法里得演算法的使用)後附思路

void resetNumA(string numAStr); //使用string重置numB void resetNumB(string numBStr); //將陣列轉換為字串,用於輸出 string getNumString(int* num); //判斷兩個數字哪個大 int compare(

【Nginx】實現負載均衡、限流、快取、黑白名單灰度釋出,這是最全的一篇了!

## 寫在前面 > 在《[【高併發】面試官問我如何使用Nginx實現限流,我如此回答輕鬆拿到了Offer!](https://mp.weixin.qq.com/s?__biz=Mzg3MzE1NTIzNA==&mid=2247485388&idx=1&sn=0854d3f9b4

LVS-DR負載均衡模型的RIPVIP在不同網絡的實現

lvs ipvsadm lvs-drLVS-DR模型架構圖解: (172.16.0.1/16,192.168.0.254/24,192.168.1.254/24) Router

機器學習的13演算法4學習方法,推薦給大家

機器學習的演算法很多。很多時候困惑人們都是,很多演算法是一類演算法,而有些演算法又是從其他演算法中延伸出來的。這裡,我們從兩個方面來給大家介紹,第一個方面是學習的方式,第二個方面是演算法的分類。 一、4大主要學習方式 1.監督式學習 在監督式學習下,輸入資料被稱為“訓練資料”,

Nginx反向代理、負載均衡、動靜分離、快取、壓縮、防盜鏈、跨域訪問

一、反向代理 1、在192.168.189.130機器啟動tomcat服務,http://192.168.189.130:8080/ 訪問服務正常 2、在192.168.189.131機器配置nginx server { listen 80; serve

一臺虛擬機器搞定負載均衡lvs-NAT模式lvs-DR模式搭建

首先來說一下負載均衡,為了解決一個伺服器不能支撐大併發量使用者的訪問,所以通過負載均衡的方法來解決這個問題,負載均衡有兩種實現方案,一種是通過硬體來實現可以購買 f5裝置,一種是通過軟體來實現如lvs、nginx等,由於lvs直接是linux系統核心級別的,實現起來方便所以仙子主要講解lvs實現

android上的快取快取演算法快取框架

Least Frequently Used(LFU) 對每個快取物件計算他們被使用的頻率。把最不常用的快取物件換走。 Least Recently User(LRU) 把最近最少使用的快取物件給換走。總是需要去了解在什麼時候,用了哪個快取物件。如果有人想要了解為什麼總能把最近最少使用的物件踢掉,是非常困難的。

通俗講解:快取快取演算法快取框架

1.引言 我們都聽過 cache,當你問他們是什麼是快取的時候,他們會給你一個完美的答案,可是他們不知道快取是怎麼構建的,或者沒有告訴你應該採用什麼標準去選擇快取框架。在這篇文章,我們會去討論快取,快取演算法,快取框架以及哪個快取框架會更好。

[LeetCode][14]Longest Common Prefix解析 兩演算法底層原始碼的深入對比-Java實現

Q: Write a function to find the longest common prefix string amongst an array of strings. A: 這題的大概意思就是說給你一組字串找出其中最長的哪個通用的前綴出來。這個東西不難找,但是如

Nginx服務搭建負載均衡,反向代理,快取加速,訪問分散式檔案系統高可用

主配置檔案如下:[[email protected]~]#vim /usr/local/nginx/conf/nginx.conf server{ listen 8099               //埠號 location / {      autoindex on;      autoinde

快取快取演算法快取框架比較

引言 我們都聽過 cache,當你問他們是什麼是快取的時候,他們會給你一個完美的答案,可是他們不知道快取是怎麼構建的,或者沒有告訴你應該採用什麼標準去選擇快取框架。在這邊文章,我們會去討論快取,快取演算法,快取框架以及哪個快取框架會更好。 面試 “快取

nginx負載均衡分配權重演算法

在介紹加權輪詢演算法(WeightedRound-Robin)之前,首先介紹一下輪詢演算法(Round-Robin)。一:輪詢演算法(Round-Robin)輪詢演算法是最簡單的一種負載均衡演算法。它的原理是把來自使用者的請求輪流分配給內部的伺服器:從伺服器1開始,直到伺服器

Spring Cloud的負載均衡Spring Cloud RibbonSpring Cloud Feign

一、客戶端負載均衡:Spring Cloud Ribbon。 Spring Cloud Ribbon是基於HTTP和TCP的客戶端負載工具,它是基於Netflix Ribbon實現的。通過Spring Cloud的封裝,可以輕鬆地將面向服務的REST模板請求,自動轉換成客戶

nginx負載均衡的一些問題具體配置

對於伺服器叢集的搭建,nginx負載均衡是很好的方式:思路如下圖 這裡的session採用了session共享的方式,這樣來避免一些情況下的session丟失。下面我會具體說到。 session丟失:是因為檔案儲存session的方式會把session儲存到當前伺服器中,

負載均衡獲得真實源IP的6方法

除了X-FORWARD-FOR,負載均衡中獲得真實源IP的方法還有很多種,本文拋磚引玉,主要介紹

【轉】負載均衡的基本演算法

1、隨機:負載均衡方法隨機的把負載分配到各個可用的伺服器上,通過隨機數生成演算法選取一個伺服器,然後把連線傳送給它。雖然許多均衡產品都支援該演算法,但是它的有效性一直受到質疑,除非把伺服器的可執行時間看的很重。2、輪詢:輪詢演算法按順序把每個新的連線請求分配給下一個伺服器,最終把所有請求平分給所有的伺服器。輪

伺服器負載均衡的基本功能實現原理

負載均衡裝置作為縱跨網路2-7層協議的裝置,往往放置在網路裝置和應用裝置的連線處,對工程師在網路和應用基本知識方面的要求遠高於其他裝置,所以我們要在基本功能的理解上下更多的功夫。負載均衡裝置還有另外一個稱呼:4/7層交換機,但它首先是個2-3層交換機,這要求我們