nginx
----------------------
安装memcacghed
location / {
#设置key
set $memecached_key "$url";
#根据key查找对应的服务器
memcached_pass 127.0.0.1:11211;
#出错的时候回调php,查找数据库中的数据
error_page 404 /callback.php
}
--------------
add /user1.html 0 0 7 \
lisi
----------------
vim callback.php
<?php
#var_dump($_SERVER); 用来当key
$uri=$_SERVER[''REQUEST_URI];
#/user4243.html
#字符串截取获取数字
$uid=substr($uri,5,strpos($uri,'.')-5);
#连接数据库并写入memcached
$con=mysql_connect("localhost",'root','root');
$sql='use test';
mysql_query($sql,$con);
$sql='set names utf8';
$sql="select * from user1 uid where=".$uid;
$rs=mysql_query($sql,$con);
$user=mysql_fetch_assoc($rs);
if(empty($user)){
echo "用户不存在";
}else{
var_dump($user);
#写入memcached
$men=new memcache();
$men->connect('localhost','11211');
$html='/user'.$uid.'.html';
$men->add('user'.$uid,$html,0,300);
$men->close();
}
多台memcache服务器时,nginx与php如何保持集群上的算法的同步。
1:有要稳定的集群算法
2:nginx与php对memcache的算法要同步。
-----------------------------------------