一、我使用一台服务器来配置多个端口号
三、
分布式系统的良性运行
/usr/
local
/memcached-1.4.21/
bin
/
memcached
-
d
-
p
11211
-
u root
-
m
10
-
c
1024
-
t
8
-
P
/
tmp
/
memcached
.
pid
/usr/
local
/memcached-1.4.21/
bin
/
memcached
-
d
-
p
11212
-
u root
-
m
10
-
c
1024
-
t
8
-
P
/
tmp
/
memcached
.
pid
/usr/
local
/memcached-1.4.21/
bin
/
memcached
-
d
-
p
11213
-
u root
-
m
10
-
c
1024
-
t
8
-
P
/
tmp
/
memcached
.
pid
二、分布式部署
首先我们需要确定memcache是安装好的
<?php $memcache =newMemcache; |
$memcache->addServer('192.168.153.131',11213); |
$memcache->addServer('192.168.153.131',11214); |
$memcache->addServer('192.168.153.131',11215); |
$memStats = $memcache->getExtendedStats(); |
print_r($memStats); ?> |
在Memcache的实际使用中,遇到的最严重的问题,就是在增减服务器的时候,会导致大范围的缓存丢失,从而可能会引导数据库的性能瓶颈,为了避免出现这种情况,请先看
Consistent hashing
算法,中文的介绍可以参考
这里
,通过存取时选定服务器算法的改变,来实现。
修改PHP的Memcache扩展memcache.c的源代码中的
"memcache.hash_strategy" = standard
为
"memcache.hash_strategy" = consistent
实际运用中我们可以这样写
ini_set('memcache.hash_strategy', 'consistent');