Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erklärung, wie PHP Weibo basierend auf der Redis-Nachrichtenwarteschlange veröffentlicht

Detaillierte Erklärung, wie PHP Weibo basierend auf der Redis-Nachrichtenwarteschlange veröffentlicht

墨辰丷
墨辰丷Original
2018-05-23 10:57:591520Durchsuche

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!

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