Redis는 효율적인 성능으로 인해 널리 사용되었습니다. 기존 세션은 데이터를 파일에 저장합니다. 디스크의 낮은 IO 성능으로 인해 세션 성능에 병목 현상이 발생합니다. 이번 글에서는 프로그램 효율성을 높이기 위해 Redis에 세션을 저장하는 방법을 주로 소개합니다.
방법 1:
구성 파일 php.ini를 찾아 다음 내용으로 수정한 후 서비스를 저장하고 다시 시작하세요
session.save_handler = redis session.save_path = "tcp://127.0.0.1:6379"
방법 2:
다음 내용을 코드에 직접 추가하세요.
ini_set("session.save_handler", "redis"); ini_set("session.save_path", "tcp://127.0.0.1:6379");
참고: 만약 redis.conf 구성 파일 연결 비밀번호 requirepass는 save_path에 설정됩니다. 이렇게 tcp://127.0.0.1:6379?auth=authpwd를 작성해야 합니다. 그렇지 않으면 세션을 저장할 때 오류가 보고됩니다.
테스트:
<?php //ini_set("session.save_handler", "redis"); //ini_set("session.save_path", "tcp://127.0.0.1:6379"); session_start(); //存入session $_SESSION['class'] = array('name' => 'toefl', 'num' => 8); //连接redis $redis = new redis(); $redis->connect('127.0.0.1', 6379); //检查session_id echo 'session_id:' . session_id() . '<br/>'; //redis存入的session(redis用session_id作为key,以string的形式存储) echo 'redis_session:' . $redis->get('PHPREDIS_SESSION:' . session_id()) . '<br/>'; //php获取session值 echo 'php_session:' . json_encode($_SESSION['class']);
관련 권장 사항:
위 내용은 PHP는 redis를 사용하여 세션 인스턴스 공유를 실현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!