一、ip_hash:
ip_hash使用源地址哈希算法,將同一客戶端的請(qǐng)求總是發(fā)往同一個(gè)后端服務(wù)器,除非該服務(wù)器不可用。
ip_hash語(yǔ)法:
?upstream?backend?{ ??ip_hash; ??server?backend1.example.com; ??server?backend2.example.com; ??server?backend3.example.com?down; ??server?backend4.example.com; }
ip_hash簡(jiǎn)單易用,但有如下問(wèn)題:
-
當(dāng)后端服務(wù)器宕機(jī)后,Session會(huì)丟失;
-
來(lái)自同一局域網(wǎng)的客戶端會(huì)被轉(zhuǎn)發(fā)到同一個(gè)后端服務(wù)器,可能導(dǎo)致負(fù)載失衡;
-
不適用于cdn網(wǎng)絡(luò),不適用于前段還有代理的情況。
二、sticky_Cookie_insert:
使用sticky_cookie_insert啟用會(huì)話親緣關(guān)系,這會(huì)導(dǎo)致來(lái)自同一客戶端的請(qǐng)求被傳遞到一組服務(wù)器在同一臺(tái)服務(wù)器。與ip_hash不同之處在于,它不是基于ip來(lái)判斷客戶端的,而是基于cookie來(lái)判斷。因此可以避免上述ip_hash中來(lái)自同一局域網(wǎng)的客戶端和前段代理導(dǎo)致負(fù)載失衡的情況。
語(yǔ)法:
?upstream?backend?{ ??server?backend1.example.com; ??server?backend2.example.com; ??sticky_cookie_insert?srv_id?expires=1h?domain=toxingwang.com?path=/; }
說(shuō)明:
-
expires:設(shè)置瀏覽器中保持cookie的時(shí)間
-
domain:定義cookie的域
-
path:為cookie定義路徑
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載。
THE END