Memcached::addServer

(PECL memcached >= 0.1.0)

Memcached::addServer向服务器池中增加一个服务器

说明

public Memcached::addServer ( string $host , int $port [, int $weight = 0 ] ) : bool

Memcached::addServer()增加指定服务器到服务器池中。此时不会建立与服务端的连接, 但是,如果你使用一致性key分布选项(Memcached::DISTRIBUTION_CONSISTENTMemcached::OPT_LIBKETAMA_COMPATIBLE),一些内部的数据结构将会被更新。 因此,如果你需要增加多台服务器,更好的方式是使用Memcached::addServers() 以确保这种更新只发生一次。

同一台服务器可以在服务器池中多次出现,因为这里没有做重复检测。但这是不推荐的做法,对于期望提高某台服务器 权重的需求,请使用weight参数。

参数

host

memcached服务端主机名。如果主机名无效,相关的数据操作的返回代码将被设置为Memcached::RES_HOST_LOOKUP_FAILURE

port

memcached服务端端口号,通常是11211

weight

此服务器相对于服务器池中所有服务器的权重。此参数用来控制服务器在操作时被选种的概率。这个仅用于一致性 分布选项,并且这个值通常是由服务端分配的内存来设置的。

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE

范例

Example #1 Memcached::addServer() example

<?php
$m 
= new Memcached();

/* Add 2 servers, so that the second one
   is twice as likely to be selected. */
$m->addServer('mem1.domain.com'1121133);
$m->addServer('mem2.domain.com'1121167);
?>

参见

关注编程学问公众号