負載均衡時,為了保證同一使用者session會被分配到同一臺伺服器上,可以使用以下方法:
1.使用cookie
將使用者的session存入cookie裡,當使用者分配到不同的伺服器時,先判斷伺服器是否存在該使用者的session,如果沒有就先把cookie裡面的sessoin存入該伺服器,實現session會話保持。缺點是存入cookie有安全隱患。
2.使用快取
利用memcache,redis等快取分布式的特點,可以將所有伺服器產生的session存入同一臺伺服器的快取中,實現session共享。這樣安全性比較高,而且從記憶體中讀取session比從檔案中讀取速度快。
3.使用ip_hash
如果是nginx伺服器的負載均衡,可以在upstream裡設定ip_hash,每個請求按訪問ip的hash結果分配,對映到固定某一台的伺服器。缺點是可能導致負載不均衡。
Nginx MVC負載均衡實現Session共享
了解了nginx之後,也對nginx實踐了,但是nginx的理論,我只能記得一丟丟 nginx是一款高效能的反向 伺服器,類似的伺服器還有apatch,tomcat,目前我只使用過nginx,自己也實踐了一下 這是使用nginx 的 有興趣的可以了解下 cgrain的 據我了解 nginx 可實現的...
nginx 負載均衡 Nginx負載均衡策略
nginx提供的負載均衡策略有2種 內建策略和擴充套件策略。內建策略為輪詢 預設 加權輪詢,ip hash,第三方。upstream mysvr1 輪詢 每個請求按照時間順序逐一的分配到每乙個後台伺服器上。如果某台伺服器宕機了,將會自動的剔除宕機的服務。nginx預設就是輪詢其權重都預設為1,伺服器...
nginx負載均衡
nginx 的 upstream目前支援 4 種方式的分配 1 輪詢 預設 每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。2 weight 指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。3 ip hash 每個請求按訪問ip的hash...