(PECL memcache >= 2.0.0)
Memcache::addServer — Ajoute un serveur memcache à la liste de connexion
$host,$port = 11211,$persistent = ?,$weight = ?,$timeout = ?,$retry_interval = ?,$status = ?,$failure_callback = ?,$timeoutms = ?Memcache::addServer() ajoute un serveur à la liste de connexion.
Lors de l'utilisation de cette méthode (contrairement aux méthodes Memcache::connect() et Memcache::pconnect()), la connexion au réseau n'est pas établie sans qu'elle ne soit nécessaire. De plus, il n'y a aucun inconvénient à ajouter beaucoup de serveurs à la liste, même s'ils ne seront pas tous utilisés.
Le basculement peut se produire à n'importe quel moment avec n'importe quelle méthode tant que les autres serveurs sont disponibles, la requête n'émettra pas d'erreur. N'importe quel interface de connexion ou niveau d'erreurs de serveur Memcache (à l'exception du manque de mémoire) peut lancer le basculement. Des erreurs normales de client comme l'ajout d'une clé existante ne lancera pas un basculement.
Note:
Cette fonction a été ajoutée à la version de Memcache 2.0.0.
host
       Pointe à l'hôte où memcache écoute pour des connexions. Ce paramètre peut également
       spécifier d'autres transporteurs comme unix:///path/to/memcached.sock
       pour utiliser les sockets Unix, et dans ce cas, port doit également
       être défini à 0.
      
port
       Pointe au port où memcache écoute pour des connexions.
       Définissez ce paramètre à 0 lors de l'utilisation des sockets Unix.
      
       Note : Par défaut, le paramètre port
       prend la valeur de l'option de configuration
       memcache.default_port
       lorsqu'il n'est pas spécifié. Pour cette raison, il convient
       de spécifier explicitement le port lors de l'appel à cette méthode.
      
persistent
       Contrôle l'utilisation d'une connexion persistante. La valeur par
       défaut est true.
      
weightNombre d'entrées à créer pour ce serveur qui en retour contrôle sa probabilité d'être choisi. La probabilité est relative au poids total de tous les serveurs.
timeoutValeur en seconde qui sera utilisée pour se connecter au démon. Pensez-y deux fois avant de changer la valeur par défaut d'une seconde - vous pourriez perdre tous les avantages de l'utilisation de la cache si votre connexion est trop lente.
retry_interval
       Contrôle combien de fois un serveur qui échoue sera tenté à nouveau, la valeur
       par défaut est de 15 secondes. Si ce paramètre vaut -1, aucune nouvelle
       tentative ne sera effectuée. Ni ce paramètre, ni le paramètre
       persistent n'ont d'effet lorsque cette extension
       est chargée dynamiquement via la fonction dl().
      
       Chaque structure de connexion échouée a son propre dépassement de temps
       et avant que celui-ci expire, il sera sauté lors de la sélection du
       processus pour servir une requête. Une fois expiré, la connexion sera
       correctement reconnectée ou marquée comme échouée pour un autre
       intervalle de retry_interval secondes. L'effet
       typique est que chaque enfant de serveur Web essaiera la connexion
       chaque retry_interval secondes lorsqu'il sert
       une page.
      
status
       Contrôle si le serveur doit être indiqué comme étant en ligne.
       Quand ce paramètre vaut false et le paramètre retry_interval
       vaut -1, cela permet de conserver un serveur qui a échoué dans la liste
       et n'affectera pas l'algorithme de distribution des clés. Les demandes
       pour ce serveur échoueront immédiatement suivant la configuration du
       paramètre memcache.allow_failover.
       Par défaut, ce paramètre vaut true, signifiant que le serveur doit être
       considéré comme étant en ligne.
      
failure_callbackPermet à l'utilisateur de spécifier une fonction de rappel permettant de contourner une erreur. La fonction de rappel est exécutée avant d'atteindre la limite de tentative. La fonction prend deux paramètres ; le nom de l'hôte et le port du serveur qui a échoué.
timeoutms
   Cette fonction retourne true en cas de succès ou false si une erreur survient.
  
Exemple #1 Exemple avec Memcache::addServer()
<?php
/* API orientée objet */
$memcache = new Memcache;
$memcache->addServer('memcache_host', 11211);
$memcache->addServer('memcache_host2', 11211);
/* API procédurale */
$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_add_server($memcache_obj, 'memcache_host2', 11211);
?>
    Lorsque le paramètre port n'est pas spécifié, cette méthode
    prendra la valeur de la directive de configuration INI
    memcache.default_port.
    Si cette valeur a été modifiée à un autre endroit dans votre application,
    cela peut conduire à des résultats inattendus : pour cette raison, il convient
    de toujours spécifier le port explicitement lors de l'appel à la méthode.