Home  >  Article  >  Backend Development  >  PHP uses redis to realize session instance sharing

PHP uses redis to realize session instance sharing

*文
*文Original
2017-12-25 14:27:461474browse

Redis has been widely used due to its efficient performance. Traditional sessions store data in files. Due to the low IO performance of disks, session performance encounters a bottleneck. This article mainly introduces how to store sessions in redis to improve program efficiency.

Method one:

Find the configuration file php.ini, modify it to the following content, save and restart the service

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

Method two:

Directly in the code Add the following content:

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

Note: If the connection password requirepass is set in the configuration file redis.conf, save_path needs to be written like this tcp://127.0.0.1:6379?auth=authpwd, otherwise when saving the session An error will be reported.


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;]);

Related recommendations:

PHP’s SESSION mechanism analysis

Cookie/Session mechanism introduction

Redis cluster building graphic tutorial

The above is the detailed content of PHP uses redis to realize session instance sharing. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn