Heim > Artikel > Backend-Entwicklung > Synchronisierung der Redis-Warteschlange mit der MySQL-Lösung
crontab ist zu ineffizient. Gibt es eine effizientere?
crontab ist zu ineffizient. Gibt es eine effizientere?
Verwenden Sie die Redis-Warteschlange, geben Sie Daten von lpush ein und öffnen Sie dann einen anderen Prozess, while(true){brpop/rpop queue}
Im Folgenden wird PHP als Beispiel verwendet:
Code in einer.php-Datei
<code>$redis->Redis(); $redis->connect($host, $port, $db); $redis->lpush('list', $data);</code>
Code in der b.php-Datei
<code>$redis->Redis(); $redis->connect($host, $port, $db); while(true) { $data = $redis->brpop('list', 0); if ($data) { // 连接mysql操作 // 插入数据 } }</code>
B.php-Datei mit PHP-Befehl ausführen
<code>php b.php</code>
Es wird empfohlen, die asynchrone Verarbeitung zu verwenden
Betreiben Sie nur die Redis-Warteschlange und verwenden Sie andere asynchrone Programme, um eine Synchronisierung zu erreichen