nginx的配置与应用(ip_hash与session篇)

来源:互联网 发布:java base64加密图片 编辑:程序博客网 时间:2024/06/08 08:51

上一篇遗留了一个问题,用户登陆后两台服务器的session不能共享,我研究了一下,发现有四个解决方案,1、session放入cookie中,2、session放入数据库中,3、session使用memcache技术放入内存中。这几个一看就不是合适,不安全,I/O慢,内存溢出。所以我觉得第四种方式比较合适,就是在nginx.conf中配置一个ip_hash,原理是ip_hash技术能够将某个ip的请求定向到同一台后端,这样一来这个ip下的某个客户端和某个后端就能建立起稳固的session。

include    gzip.conf;         upstream localhost {             #ip_hash        ip_hash;        server localhost:8080;        server localhost:9080;       }

对,就是上一篇中的配置项把注释去掉就OK了。

我们把昨天的两个index.jsp稍微改一下,body改成

<body>        tomcat1<br/><%=request.getSession().getId() %></body>

<body>        tomcat2<br/><%=request.getSession().getId() %></body>

然后启动两个tomcat测试下,键入localhost,发现

同一台电脑上显示的session id是一致的

在另一台电脑上面键入服务器的ip发现session id又是新的一个。

0 1