(PECL memcached >= 0.1.0)
Memcached::addServer — 向服務(wù)器池中增加一個(gè)服務(wù)器
$host
, int $port
, int $weight
= 0): bool
Memcached::addServer()增加指定服務(wù)器到服務(wù)器池中。此時(shí)不會建立與服務(wù)端的連接,
但是,如果你使用一致性key分布選項(xiàng)(Memcached::DISTRIBUTION_CONSISTENT
或
Memcached::OPT_LIBKETAMA_COMPATIBLE
),一些內(nèi)部的數(shù)據(jù)結(jié)構(gòu)將會被更新。
因此,如果你需要增加多臺服務(wù)器,更好的方式是使用Memcached::addServers()
以確保這種更新只發(fā)生一次。
同一臺服務(wù)器可以在服務(wù)器池中多次出現(xiàn),因?yàn)檫@里沒有做重復(fù)檢測。但這是不推薦的做法,對于期望提高某臺服務(wù)器
權(quán)重的需求,請使用weight
參數(shù)。
host
memcached服務(wù)端主機(jī)名。如果主機(jī)名無效,相關(guān)的數(shù)據(jù)操作的返回代碼將被設(shè)置為Memcached::RES_HOST_LOOKUP_FAILURE
。
port
memcached服務(wù)端端口號,通常是11211
。
weight
此服務(wù)器相對于服務(wù)器池中所有服務(wù)器的權(quán)重。此參數(shù)用來控制服務(wù)器在操作時(shí)被選種的概率。這個(gè)僅用于一致性 分布選項(xiàng),并且這個(gè)值通常是由服務(wù)端分配的內(nèi)存來設(shè)置的。
成功時(shí)返回 true
, 或者在失敗時(shí)返回 false
。
示例 #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', 11211, 33);
$m->addServer('mem2.domain.com', 11211, 67);
?>