tar zxvf memcache-2.2.7.tgz 解压
cd memcache-2.2.7
/usr/local/fastphp/bin/phpize
./configure --with-php-config=/usr/local/fastphp/bin/php-config
make && make install
pkill -9 php 杀php
./sbin/php-fpm
upstream mserver{
server 192.168.1.123:11211;
server 192.168.1.123:11212;
server 192.168.1.123:11213;
}
server{
location /{
set
m
e
m
c
a
c
h
e
d
k
e
y
"
memcached_key "
memcachedkey"uri";
memcached_pass mserver;
error_page 404 ;
}
}
如果有好多台memcache,怎么实现缓存
nginx根据uri哈希到某台服务器上
用一致性哈希
nginx.conf中
upstream memserver {
consistent_hash $request_uri;
server 192.168.1.123:11211;
server 192.168.1.123:11212;
server 192.168.1.123:11213;
}
php也要同步nginx的算法,实现同步,用一致性hash
php.ini配置里面 memcache.hash_strategy=consistent
也添加多台服务器
$mem = new memcache();
$mem->addServer(‘192.168.1.123’,‘11211’);
$mem->addServer(‘192.168.1.123’,‘11212’);
$mem->addServer(‘192.168.1.123’,‘11213’);
upstream做负载均衡时,要用ip或远程主机名
不能用localhost
///如何优化,集群,每秒千并发量,每天2,3千万pv的程度
1.减少请求,
合并css及image,减少mysql查询
2nginx的expires 利用浏览器缓存
3利用cdn响应请求
4服务器集群和负载均衡