標籤:nginx-tomcat-redis(session共用)
tomcat-session-redis配置
Session持久機制三種實現方法:
1、session綁定:始終將來自同一個源IP的請求定向至同一個RS;沒有容錯能力;有損均衡效果(sh)
2、session複製:在RS之間同步session,每個RS擁有叢集中的所有的session;對規模叢集不適用;必須RS支援(lblcr)
3、session伺服器:利用單獨部署的伺服器來統一管理叢集中的session;(單有單點故障)
nginx-tomcat-redis(session共用)配置執行個體:
環境:兩台機器:
10.15.51.141:tomcatA
10.15.51.222:tomcatB、nginx、redis
步驟:
1. 所需要的包,放入到tomcat目錄的lib目錄下(附件中)
commons-pool-1.6.jar
jedis-2.1.0.jar
tomcat-redis-session-manager-1.2-tomcat-7.jar
2. 配置tomcat目錄下的conf/context.xml,加入以下內容:
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" /> <Manager className="com.radiadesign.catalina.session.RedisSessionManager" host="10.15.51.222" #redis地址 port="6379" #redis連接埠 database="0" maxInactiveInterval="60"/> #session失效時間(秒)
3. nginx配置:
http{ upstream aaa { server 10.15.51.222:8080; server 10.15.51.141:8080; }server { server_name aaa.test.com; listen 80; location {access_log logs/ning_access.txt; proxy_pass http://aaa; } }}
4、在兩台tomcat中添加以下內容方便測試
A提供測試:
# mkdir -pv test/WEB-INF/{classes,lib}# vim test/index.jsp<%@ page language="java" %><html> <head><title>TomcatA</title></head> <body> <h1><font color="blue">Tomcata.10.15.51.222.com</font></h1> <table align="centre" border="1"> <tr> <td>Session ID</td> <% session.setAttribute("ning.com","ning.com"); %> <td><%= session.getId() %></td> </tr> <tr> <td>Created on</td> <td><%= session.getCreationTime() %></td> </tr> </table> </body></html>
B提供測試:
# mkdir -pv test/WEB-INF/{classes,lib}# vim test/index.jsp<%@ page language="java" %><html> <head><title>TomcatB</title></head> <body> <h1><font color="blue">TomcatB.10.15.51.141.com</font></h1> <table align="centre" border="1"> <tr> <td>Session ID</td> <% session.setAttribute("ning.com","ning.com"); %> <td><%= session.getId() %></td> </tr> <tr> <td>Created on</td> <td><%= session.getCreationTime() %></td> </tr> </table> </body></html>
訪問:
http://IP:80/test 或http://IP/test
本文出自 “奮鬥的人” 部落格,請務必保留此出處http://wodemeng.blog.51cto.com/1384120/1696958
tomcat-session-redis配置(session共用)