Heim  >  Artikel  >  Backend-Entwicklung  >  So schreiben Sie eine PHP-Sitzung in Redis

So schreiben Sie eine PHP-Sitzung in Redis

小云云
小云云Original
2018-01-25 14:37:412061Durchsuche

Sitzung: Bei Computern, insbesondere bei Netzwerkanwendungen, wird dies als „Sitzungssteuerung“ bezeichnet. In diesem Artikel erfahren Sie, wie Sie die Sitzung in Redis speichern. Wenn Sie es benötigen, beeilen Sie sich und lernen Sie es.

Die Sitzungssitzung von PHP wird standardmäßig in Form einer Datei im Sitzungs-Cache-Verzeichnis gespeichert. Die Effizienz der Dateispeichersitzung ist bei jeder Anmeldung sehr gering. Eine Sitzung wird auf dem Server generiert. Wenn die Anzahl der Benutzeranmeldungen Hunderttausende erreicht, werden zu diesem Zeitpunkt Hunderttausende Dateien auf dem Server generiert auf der Festplatte ist sehr langsam, was dazu führt, dass das Programm fehlschlägt, wenn sich der Benutzer anmeldet. Verbringen Sie viel Zeit damit, Sitzungsdateien zu lesen und zu schreiben. Wenn sich eine große Anzahl von Benutzern anmeldet, reichen die Lese- und Schreibfunktionen nicht aus. Dies führt dazu, dass die Datei vom ersten Prozess, der die Sitzung ausführt, gesperrt wird und andere Anforderungen blockiert werden. Die Anfrage wird in session_start() ausgesetzt, bis die Sitzungsdatei entsperrt ist. Zu diesem Zeitpunkt ist es notwendig, das Problem der langsamen Anmeldung zu optimieren.

Da die gesperrte Sitzungsdatei erst entsperrt wird, wenn die Skriptausführung endet oder die Sitzung normal geschlossen wird, um eine große Anzahl von PHP-Anfragen zu verhindern (die die Verwendung von $_SESSION-Daten erfordern) Um die Sperre zu verhindern, können Sie die Sitzung sofort nach dem Schreiben schließen und so die Sperre aufheben.

//开启会话
session_start();
//写入会话
$_SESSION['is_login']=1;
//写入会话后关闭上一个会话文件的写入
session_write_close();

PHP-Sitzung schreibt auf Redis

Redis-Daten werden auf dem Speicherstick des Computers gespeichert und ausgeführt. Die Schreibgeschwindigkeit des Speichersticks des Computers ist Dutzende Male höher als die der Festplatte. Wenn Sie also die PHP-Sitzung in den Redis-Cache schreiben, wird die Geschwindigkeit erheblich verbessert. Konfigurationsmethode:

//方式一,在php脚本中设置更改php会话写入方式
<?php
ini_set("session.save_handler","redis"); 
ini_set("session.save_path","tcp://127.0.0.1:6379");
//如果有密码
ini_set("session.save_path","tcp://127.0.0.1:6379?auth=password");
?>
//修改php的配置文件php.ini
session.save_handler = redis 
session.save_path = "tcp://127.0.0.1:6379"
//如果有密码
session.save_path = "tcp://127.0.0.1:6379?auth=password"

Verwandte Empfehlungen:

So registrieren und lesen Sie eine Sitzung in PHP

Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine PHP-Sitzung in Redis. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn