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

上一篇遗留了一个问题,用户登陆后两台服务器的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改成


        tomcat1
<%=request.getSession().getId() %>


        tomcat2
<%=request.getSession().getId() %>

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

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

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

你可能感兴趣的:(服务器探索)