Szenario: Anwendbar auf die meisten Nachrichtenwarteschlangenszenarien, ich werde einige gängige Orte auflisten: automatische Auftragsstornierung und Bestandsrückgabe, automatischer Empfang, Massen-E-Mail, Push-WeChat-Nachrichtenvorlage, asynchroner E-Mail-Versand , automatische Kündigung bei Ablauf der Mitgliedschaft usw.
1. Schauen wir uns zunächst den Implementierungsprozess dieses nachrichtenseitigen Systems an.
Dann schreiben Sie die Geschäftslogik in der Job-Klasse mit zwei Methoden [doJob => Custom business, after=> Business Follow-up Operations]
2. Serve-Queue erklärt den Vorgang im Detail:
1. Installieren Sie Git Clone https://github.com/twomiao/Serve.git und führen Sie dann den Befehl aus: Composer install
2. cd Serve/app/ Öffnen Sie das Verzeichnis und rendern Sie:
3. Verzeichniseinführung: Config, Services, Utils, Job, Func
(1 ) Verzeichnis der Konfigurationsdateien (Redis, MySQL, Serve-Queue)
(2) Dienste-Geschäftsschicht (OrderService)
(3) Utils-Tool-Klasse (Mail, SMS usw. usw.), Helper entspricht
(4) Jobverzeichnis (Job::doJob() business ist darin geschrieben, ändern Sie den Jobklassennamen nicht)
(5) Func Häufig verwendete Funktionen (z. B. env, db)
(6) Protokollprotokollverzeichnis und TEST-Verzeichnis (Simulationsdatendateien befinden sich darin)
3. Serve-Queue-Betriebsprozess:
PHP-Serve-Startbefehl zum Starten:
Simulierte Daten über PHP test/placeOrder.php liefern 1000
swoole startet Multiprozessverarbeitung, Bestelldaten
php Serve Reload: startet den Task-Prozess reibungslos neu, entspricht update (new Job())->doJob( ) method;
Fügen Sie eine neue Texterinnerung „2333, reibungsloser Neustart erfolgreich“ hinzu;
Daemon läuft: Befehlsausführung php Serve Start -d
Bestellung aufgeben, sollen wir es testen? -1 Ausstehender Zahlungsstatus 0 wurde automatisch storniert
Erinnerung: Die Testdatei befindet sich in Serve/data/sp_order.sql
4. Um das zu implementieren Im obigen Prozess benötigen Sie Folgendes: Installieren Sie diese Umgebungen
1. Installieren Sie Redis als Warteschlange, MySQL-Datenbank
2. Schließen Sie die erweiterte Installation mit dem Befehl pecl install swoole, pecl install ab Der Befehl seaslog
php --ini ermittelt den Speicherort von php.ini und fügt swoole.so und seaslog.so hinzu
3. Verwenden Sie das Mix Delayer-Tool (um Verzögerung erreichen)
Download-Adresse: https://github.com/mix-basic/delayer/releases
Gebrauchsanweisung: https://github.com /mix-basic/delayer-client-php
4. Management Serve-Befehle: php reload | Lageradresse:
https://github.com/twomiao/Jober
Swoole-Einführungs-Tutorial
, willkommen zum Online-Lernen!Das obige ist der detaillierte Inhalt vonErfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!