Heim >PHP-Framework >Swoole >Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼nach vorne
2019-11-22 16:50:462457Durchsuche

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

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]

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

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:

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

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:

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

Simulierte Daten über PHP test/placeOrder.php liefern 1000

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

swoole startet Multiprozessverarbeitung, Bestelldaten

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

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;

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

Daemon läuft: Befehlsausführung php Serve Start -d

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

Bestellung aufgeben, sollen wir es testen? -1 Ausstehender Zahlungsstatus 0 wurde automatisch storniert

Erfahren Sie in einem Artikel mehr über das Swoole-Multiprozess-Messaging-System

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/Serve.git (Redis-Verzögerungswarteschlange)

https://github.com/twomiao/Jober

PHP chinesische Website, viel Kostenloses

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen