Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erklärung, wie PHP Weibo basierend auf der Redis-Nachrichtenwarteschlange veröffentlicht
In diesem Artikel wird hauptsächlich die Methode zum Veröffentlichen von Weibo in PHP basierend auf der Redis-Nachrichtenwarteschlange vorgestellt. Er analysiert die Installation, Verbindung, das Lesen, das Einfügen und andere damit verbundene Betriebsfähigkeiten der PHP+Redis-Datenbank in Form von Beispielen Bedarf kann sich auf Folgendes beziehen:
phpRedisAdmin:github-Adresse Grafische Verwaltungsoberfläche
git clone [url]https://github.com/ErikDubbelboer/phpRedisAdmin.git[/url] cd phpRedisAdmin git clone [url]https://github.com/nrk/predis.git[/url] vendor
Installieren Sie zunächst die oben genannte grafische Redis-Verwaltung Schnittstelle zur bequemen Verwaltung von Redis-Daten
Um die Anzahl der Parallelitäten von MySQL zu reduzieren, speichern Sie zunächst das Weibo des Benutzers in Redis
Gehen Sie davon aus, dass der Benutzer dies benötigt drei Felder beim Posten, UID (Benutzer-ID-Nummer), Benutzername (Benutzername), Inhalt ('Benutzerkommentar')
Zum Beispiel übergibt der Benutzer die folgenden Informationen
//此处需要安装phpredis $redis = new Redis(); $redis->connect('127.0.0.1', 6379); // 连接redis $web_info= array( 'uid' => '123456', 'username' => '123', 'content' =>'123' ); //将数组转成json来存储 $list = json_encode($web_info); //lpush向KEY对应的头部添加一个字符串元素 $redis->lpush('weibo_lists',$list); $redis->close(); ///var_dump(json_encode($web_info)); var_dump($list); ?>
Hier sehen Sie, dass unser Redis bereits Daten hat
//创建一个PDO数据库链接 data.php class qq{ public function post($uid='',$username='',$content=''){ try{ $dsn = "mysql:host;dbname=localhost;dbname=test"; $db = new PDO($dsn,'root','root'); $db->exec("SET NAMES UTF8"); $sql ="insert into test(uid,username,content)values('$uid','$username','$content')"; $db->exec($sql); }catch(PDOException $e){ $e->getMessage(); } } }
//处理redis数据库的数据 并把数据放到MYSQL数据库中 include "data.php"; $qq = new qq(); $redis = new Redis(); $redis->connect('127.0.0.1', 6379); //返回的列表的大小。如果列表不存在或为空,该命令返回0。如果该键不是列表,该命令返回FALSE if($redis -> lsize('weibo_lists')){ //从LIST头部删除并返回删除数据 $info = $redis->rPop('weibo_lists'); $info = json_decode($info); $qq->post($info->uid,$info->username,$info->content); } $redis->close(); var_dump($info); ?>
Wir können sehen, dass die Datenbank bereits Daten enthält
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass es für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
PHPFunktion Datum und Uhrzeit Funktion date() detaillierte Erklärung_php-Grundlagen
Zusammenfassung der PHP-Zeitberechnungsprobleme_php-Fähigkeiten
php stream_get_meta_data return value_php-Grundlagen
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung, wie PHP Weibo basierend auf der Redis-Nachrichtenwarteschlange veröffentlicht. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!