大型WEB应用通常会采用集群进行负载均衡,但是php默认使用文件保存session,使用负载均衡后,会造成各台机器上session的不同步。如用户登录成功后,刷新页面,请求可能被分发到集群中的另外一台机器,而这台机器上是没有该用户的session信息的,则导致用户需要重新登陆。

解决该问题的方法通常有以下几种:

1.使用数据库同步session (性能会有一定影响)

2.session数据保存到cookie中(有cookie被伪造的风险)

3.使用memcache同步session(推荐)

下面是memcache配置:
vim /etc/php.d/memcache.ini

使用方法

MemSession类代码