负载均衡session会话保持方法


负载均衡时,为了保证同一用户session会被分配到同一台服务器上,可以使用以下方法:
1.使用cookie
将用户的session存入cookie里,当用户分配到不同的服务器时,先判断服务器是否存在该用户的session,如果没有就先把cookie里面的sessoin存入该服务器,实现session会话保持。缺点是存入cookie有安全隐患。

2.使用缓存
利用memcache,redis等缓存分布式的特点,可以将所有服务器产生的session存入同一台服务器的缓存中,实现session共享。这样安全性比较高,而且从内存中读取session比从文件中读取速度快。

实例:PHP分布式中Redis实现Session


3.使用ip_hash
如果是nginx服务器的负载均衡,可以在upstream里设置ip_hash,每个请求按访问ip的hash结果分配,映射到固定某一台的服务器。缺点是可能导致负载不均衡。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM