Cet article présente principalement la méthode PHP pour implémenter Memcache distribué pour configurer la synchronisation des sessions de cluster Web. Il analyse les compétences opérationnelles et les précautions associées à la configuration et à l'utilisation de PHP pour réaliser la synchronisation des sessions de cluster Web sous forme d'exemples. Les amis dans le besoin peuvent s'y référer. Suivant
L'exemple de cet article décrit comment PHP implémente le memcache distribué pour configurer la synchronisation des sessions du cluster Web.
La session PHP par défaut est le stockage de fichiers :
session.save_handler = files session.save_path = "/var/lib/php/session"
Lorsque vous utilisez un cluster Web et avez besoin d'une synchronisation de session, stockez la session dans Memcache distribué est un bon moyen d'obtenir une synchronisation partagée
Méthode :
Type 1 :
vi /etc/php.ini
session.save_handler = memcache session.save_path = "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211"
Type 2 :
dans le fichier php Utilisez le ini_set fonction de configuration, adaptée aux hôtes virtuels qui ne peuvent pas modifier le fichier de configuration
<?php .... ini_set("session.save_handler", "memcache"); ini_set("session.save_path", "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211"); .... ?>
Redémarrer le serveur Web
service httpd restart
Voir phpinfo
Tester login.php en 192.168.20.193
<?php session_start(); $_SESSION['login_time'] = time(); $_SESSION['username'] = 'test2'; $token=session_id(); echo $token; //memache实现 $mem = new Memcache(); $mem->addServer('192.168.20.193',11211); $mem->addServer('192.168.20.194',11211); /* //memached实现 $mem = new Memcached(); $servers = array( array('192.168.20.193', 11211, 33), array('192.168.20.194', 11211, 67) ); $mem->addServers($servers); */ echo '<hr>'; print_r($mem->get($token)); ?> <p> <a href="http://192.168.20.194/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">跳转到194网站的个人中心</a> </p>
user.php dans 192.168.20.194
<?php $mem = new Memcache(); $mem->addServer('192.168.20.193',11211); $mem->addServer('192.168.20.194',11211); $token=$_GET['token'];//获取传过来的token print_r($mem->get($token)); ?> <p> <a href="http://192.168.20.193/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">返回193网站的个人中心</a> </p>
Vous pouvez Articles d'intérêt :
Explication de la fonction de découpe et de fusion de fichiers volumineux implémentée par PHPExemple d'algorithme de regroupement de mots simple implémenté par PHPExplication complète d'un exemple de la classe d'opérations de base de données mongoDB implémentée par PHPCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!