📜  PHP Memcached addServer()函数

📅  最后修改于: 2022-05-13 01:56:37.851000             🧑  作者: Mango

PHP Memcached addServer()函数

Memcached::add()函数是PHP中 memcached 类的内置函数,用于将服务器添加到服务器池中。它将指定的服务器添加到服务器池中。此时没有与服务器建立连接,但如果您使用一致的密钥分配选项(通过 Memcached::DISTRIBUTION_CONSISTENT 或 Memcached::OPT_LIBKETAMA_COMPATIBLE),则必须更新一些内部数据结构。因此,如果您需要添加多个服务器,最好使用 Memcached::addServers() 因为更新只发生一次。

同一台服务器可能会在服务器池中出现多次,因为没有进行重复检查。这是不可取的;相反,使用 weight 选项来增加此服务器的选择权重。

句法:

参数:此函数接受三个参数:

  • host: memcache 服务器的主机名。
  • port:运行内存缓存的端口。通常,这是 11211。
  • weight:服务器的权重相对于池中所有服务器的总权重。用于负载平衡。

返回值:成功时返回true,失败时返回false。

下面的程序说明了PHP中的 Memcached::addServer()函数:

示例 1:

PHP
";
  
// Server & port details
$server = '127.0.0.1';
$port = 11211;
  
// Initiate a new object of memcache
$memcacheD = new Memcached();
  
// Add server
if ($memcacheD->addServer($server, $port)) {
    echo "**  server added ** \n";
}
else {
    echo "** issue while creating a server **\n";
}
  
// Get server detail
echo "Server Details :: \n";
var_dump($memcacheD->getServerList());
  
?>


PHP
";
  
// Server & port details
$server = '127.0.0.1';
$port = "8000";
  
// Initiate a new object of memcache
$memcacheD = new Memcached();
  
// Add server
if ($memcacheD->addServer($server, $port)) {
    echo "**  server added ** \n";
}
else {
    echo "** issue while creating a server **\n";
}
  
// Get server detail
echo "Server Details :: \n"; 
var_dump($memcacheD->getServerList());
  
?>


输出:

示例 2(创建服务器时出错:已使用端口):

PHP

";
  
// Server & port details
$server = '127.0.0.1';
$port = "8000";
  
// Initiate a new object of memcache
$memcacheD = new Memcached();
  
// Add server
if ($memcacheD->addServer($server, $port)) {
    echo "**  server added ** \n";
}
else {
    echo "** issue while creating a server **\n";
}
  
// Get server detail
echo "Server Details :: \n"; 
var_dump($memcacheD->getServerList());
  
?>

输出:

参考: https://www. PHP.net/manual/en/memcached.addserver。 PHP