Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Cache-Instanz mit Redis

PHP-Cache-Instanz mit Redis

不言
不言Original
2018-04-13 10:28:222738Durchsuche

Der in diesem Artikel mit Ihnen geteilte Inhalt ist ein Caching-Beispiel für PHP mit Redis, das einen gewissen Referenzwert hat. Freunde in Not können sich darauf beziehen

Ich habe erst vor kurzem angefangen, Redis zu studieren, also habe ich geschrieben eine PHP-Anwendung Ein kleines Beispiel für Redis-Caching. Beschweren Sie sich nicht, wenn es Ihnen nicht gefällt

Die allgemeine Idee ist wie folgt:

Hauptsächlich Nachrichten zwischenspeichern

Bestimmen Sie zunächst, ob es sich um den ersten Besuch handelt, fragen Sie dann die Datenbank ab und speichern Sie sie in Redis. Wenn nicht, lesen Sie die Daten direkt aus Redis

Ich habe einen Inner eingerichtet, um festzustellen, ob es sich um den ersten Zugriff handelt. und stellen Sie die Gültigkeitsdauer des Inneren auf 60 Sekunden ein (zum Beispiel müssen Nachrichten in Echtzeit sein)

Der spezifische Code lautet wie folgt:

<?php  
//实例化redis
$redis = new \Redis();
//连接redis
$redis->connect(&#39;127.0.0.1&#39;,6379);
$redis->auth(&#39;12345&#39;); 
if($redis->get(&#39;inner&#39;)==&#39;yes&#39; || !$redis->get(&#39;inner&#39;)){
	//第一次进入,需要缓存
	//连接数据库进行查询
	$db = new mysqli(&#39;127.0.0.1&#39;,&#39;root&#39;,&#39;root&#39;,&#39;table&#39;);
	$sql = "select * from newsinfo";
	$res = $db->query($sql);
	while($new = mysqli_fetch_assoc($res)){
		$news[] = $new;
	}
        //将数据存入redis的list中
	$json=json_encode($news);
	$redis->del(&#39;news&#39;);//把键值删除,防止重复
    $redis->lPush(&#39;news&#39;, $json);
    $redis->set(&#39;inner&#39;, &#39;no&#39;,60); //设置键值有效期为60秒
}else{
	//从redis中取出数据
	$json=$redis->lRange(&#39;news&#39;, 0, -1);
	$news=json_decode($json[0],true);
}

?>
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>redis缓存实例</title>
</head>
<body>
	<?php foreach ($news as $k => $v) {  ?>
		<li><?php  echo $v[&#39;title&#39;];  ?></li>
	<?php } ?>
</body>
</html>

Die Antwortzeit beim direkten Zugriff auf die Datenbank beträgt

Die Reaktionszeit des zweiten Besuchs beträgt

Die Reaktionszeit wird deutlich verkürzt

Verwandte Empfehlungen:

Über Redis in PHP Teilweise Zusammenfassung der Befehle

Detaillierte Grafik- und Texterklärung zum Hinzufügen der Redis-Erweiterung zu PHP

30 Codebeispiele für häufig verwendete Methoden zum PHP-Betrieb von Redis



Das obige ist der detaillierte Inhalt vonPHP-Cache-Instanz mit 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