1,主服务器安装php-redis 以及redis服务器端这个不多说去执行命令行yum或apt-get什么的,辅服务器只需要安装php-redis(这两个服务器必须在一个内网中不然外网访问着实不安全的)
2,来吧骚年打开的你服务器上的php.ini文件:
先看看php extension=redis.so是否开启session.save_handler = redissession.save_path = "tcp://【redis主服务器的内网ip】:6379″
主和辅服务器的php-redis需要绑定一下ip(ip一致主服务器的redis-server)
redis.confbind【redis主服务器的内网ip】
这个为了安全起见设置一个redis链接的密码:
打开 vim /etc/redis/redis.confrequirepass 通信密码(修改这里)
ok配置好重启redis :sudo service redis-server restart
3,测试Redis连接和验证:
redis-cli -h 【redis主服务器内网ip】
如果设置了redis链接密码,现在尝试访问数据,应该得到一个AUTH错误接下来执行下
> redis-cliredis内网ip:6397> keys *
ok了到这步的时候已经完成99%了还差一步就是各种重启额
service apache2 restartservice php5-fpm restart
4,测试session是否写入redis:
<?php session_start();$_SESSION['bieanju'] = array('name' => '别安驹', 'num' => 'http://www.bieanju.com/');//连接redis$redis = $this->connectRedis();////检查session_idecho 'session_id:' . session_id() . '<br/>';//redis存入的session(redis用session_id作为key,以string的形式存储)echo 'redis_session:' . $redis->get('PHPREDIS_SESSION:' . session_id()) . '<br/>';echo 'php_session:' . json_encode($_SESSION['class']);print_r($_SESSION['bieanju']);?>
速来围观,没错session写入redis了可以读取了,ok至此对于负载均衡的session也就基本解决了,剩下的就是在项目如何应用那就看你自己的业务需要。
最后在说一下php是世界上最好的语言,呵呵……