Maison  >  Article  >  développement back-end  >  PHP utilise Redis pour réaliser le partage d'instances de session

PHP utilise Redis pour réaliser le partage d'instances de session

*文
*文original
2017-12-25 14:27:461474parcourir

Redis a été largement utilisé en raison de ses performances efficaces. Les sessions traditionnelles stockent les données dans des fichiers en raison des faibles performances d'E/S des disques, les performances de session rencontrent un goulot d'étranglement. Cet article explique principalement comment stocker les sessions dans Redis pour améliorer l'efficacité du programme.

Méthode 1 :

Trouvez le fichier de configuration php.ini, modifiez-le avec le contenu suivant, enregistrez et redémarrez le service

session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"

Méthode 2 :

Ajoutez directement le contenu suivant au code :

ini_set("session.save_handler", "redis");
ini_set("session.save_path", "tcp://127.0.0.1:6379");

Remarque : Si le mot de passe de connexion requirepass est défini dans le fichier de configuration redis.conf, save_path doit être écrit comme ceci tcp://127.0 .0.1:6379?auth=authpwd, sinon Une erreur sera signalée lors de l'enregistrement de la session.


Test :

<?php
//ini_set("session.save_handler", "redis");
//ini_set("session.save_path", "tcp://127.0.0.1:6379");
session_start();
//存入session
$_SESSION[&#39;class&#39;] = array(&#39;name&#39; => &#39;toefl&#39;, &#39;num&#39; => 8);
//连接redis
$redis = new redis();
$redis->connect(&#39;127.0.0.1&#39;, 6379);
//检查session_id
echo &#39;session_id:&#39; . session_id() . &#39;<br/>&#39;;
//redis存入的session(redis用session_id作为key,以string的形式存储)
echo &#39;redis_session:&#39; . $redis->get(&#39;PHPREDIS_SESSION:&#39; . session_id()) . &#39;<br/>&#39;;
//php获取session值
echo &#39;php_session:&#39; . json_encode($_SESSION[&#39;class&#39;]);

Recommandations associées :

Mécanisme de SESSION PHP Analyse

Introduction au mécanisme de cookie/session

Tutoriel graphique de création de cluster Redis

Ce 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn