Várólista-kezelés
A Queuety több névvel ellátott várólistát támogat. Minden munkafolyamat egy várólistát vagy várólisták rendezett listáját dolgozza fel (lásd: Munkafolyamatok), a várólisták pedig egymástól függetlenül szüneteltethetők és folytathatók.
Névvel ellátott várólisták
Feladatok küldése adott várólistákra:
use Queuety\Queuety;
Queuety::dispatch( 'send_email', $payload )->on_queue( 'emails' );
Queuety::dispatch( 'process_image', $payload )->on_queue( 'media' );
Queuety::dispatch( 'sync_data', $payload )->on_queue( 'sync' );
Munkafolyamatok indítása minden várólistához:
wp queuety work --queue=emails
wp queuety work --queue=media
wp queuety work --queue=sync
Az alapértelmezett várólista a default. Ha nem ad meg várólistát, a feladatok ide kerülnek.
Szüneteltetés és folytatás
Szüneteltessen egy várólistát, ha meg szeretné akadályozni, hogy a munkafolyamatok új feladatokat vegyenek át. A már feldolgozás alatt álló feladatok befejeződnek, de újakat nem vesznek fel.
Queuety::pause( 'emails' );
Queuety::resume( 'emails' );
Ellenőrizze, hogy szünetel-e egy várólista:
if ( Queuety::is_paused( 'emails' ) ) {
// Queue is paused
}
A CLI segítségével:
wp queuety pause emails
wp queuety resume emails
Ez hasznos telepítések vagy karbantartási időszakok alatt, amikor ideiglenesen le szeretné állítani a feldolgozást a worker leállítása nélkül.
Várólistastatisztikák
Feladatok számának lekérése állapot szerint csoportosítva:
$stats = Queuety::stats(); // all queues
$stats = Queuety::stats( 'emails' ); // specific queue
// Returns: ['pending' => 12, 'processing' => 3, 'completed' => 150, 'failed' => 2, 'buried' => 1]
A CLI segítségével:
wp queuety status
wp queuety status --queue=emails
Eltemetett feladatok
Az összes eltemetett feladat listázása (az újrapróbálkozások kimerülése után sikertelenek):
$buried = Queuety::buried(); // all queues
$buried = Queuety::buried( 'emails' ); // specific queue
Újrapróbálkozás:
Queuety::retry( $job_id ); // retry a specific job
Queuety::retry_buried(); // retry all buried jobs
Befejezett feladatok törlése
A régi, befejezett feladatok eltávolításával tisztán tarthatja az adatbázist:
$count = Queuety::purge(); // uses QUEUETY_RETENTION_DAYS (default: 7)
$count = Queuety::purge( 30 ); // purge jobs older than 30 days
A CLI segítségével:
wp queuety purge
wp queuety purge --older-than=30