Web--Session共享問題

BtWangZhi發表於2017-11-26

在Nginx做反向代理時,面對叢集,如何保證Session的一致性。
第一種是以負載均衡伺服器本身提供的session共享策略,每種服務期的配置是不一樣的並且nginx本身是沒有的。
第二種是利用web容器本身的session共享策略來配置共享。但是針對於tomcat這種方式存在很大的缺陷,主要因為是依靠廣播方式來實現的session複製,會浪費很多頻寬導致整個網路反映緩慢。官網也建議這種方式最好不要超過4臺tomcat。
第三種是Tomcat叢集+redis的Session共享配置方法.
第四種是通過IP路由策略。
1 Tomcat之間的Session共享方案:
在每個Tomcat /bin/server.xml中取消註釋掉了的一行程式碼,
這裡寫圖片描述
使用這樣方法配置的叢集會將Session同步到所在網段上的所有配置了叢集屬性的例項上,使用這樣方法配置的叢集會將Session同步到所在網段上的所有配置了叢集屬性的例項上

在專案的web.xml中新增如下標籤:

這裡寫圖片描述

Nginx反向代理兩臺伺服器時,訪問不同的伺服器時,通過Tomcat中的Session共享保證不管訪問哪個伺服器,Session均一樣。
這裡寫圖片描述

相關文章