Pāriet uz saturu

Rindu pārvaldība

Queuety atbalsta vairākas nosauktas rindas. Katrs darbinieks apstrādā vienu rindu vai sakārtotu rindu sarakstu (skatiet Darbinieki), un rindas var apturēt un atsākt neatkarīgi.

Nosauktās rindas

Nosūtiet darbus uz noteiktām rindām:

PHP
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' );

Palaidiet darbiniekus katrai rindai:

Apvalks
wp queuety work --queue=emails
wp queuety work --queue=media
wp queuety work --queue=sync

Noklusējuma rinda ir default. Ja rindu nenorādāt, darbi tiek ievietoti tajā.

Apturēšana un atsākšana

Apturiet rindu, lai neļautu darbiniekiem pieņemt jaunus darbus. Jau apstrādē esošie darbi tiks pabeigti, taču jauni darbi netiks paņemti.

PHP
Queuety::pause( 'emails' );
Queuety::resume( 'emails' );

Pārbaudiet, vai rinda ir apturēta:

PHP
if ( Queuety::is_paused( 'emails' ) ) {
    // Queue is paused
}

Izmantojot CLI:

Apvalks
wp queuety pause emails
wp queuety resume emails

Tas noder izvietošanas vai apkopes laikā, kad vēlaties uz laiku apturēt apstrādi, nenogalinot darbinieku.

Rindu statistika

Iegūstiet darbu skaitu, grupētu pēc statusa:

PHP
$stats = Queuety::stats(); // all queues
$stats = Queuety::stats( 'emails' ); // specific queue

// Returns: ['pending' => 12, 'processing' => 3, 'completed' => 150, 'failed' => 2, 'buried' => 1]

Izmantojot CLI:

Apvalks
wp queuety status
wp queuety status --queue=emails

Apbedītie darbi

Uzskaitiet visus apbedītos darbus (kuriem beigušies atkārtotas mēģināšanas mēģinājumi):

PHP
$buried = Queuety::buried(); // all queues
$buried = Queuety::buried( 'emails' ); // specific queue

Mēģiniet tos izpildīt vēlreiz:

PHP
Queuety::retry( $job_id );       // retry a specific job
Queuety::retry_buried();         // retry all buried jobs

Pabeigto darbu tīrīšana

Noņemiet vecos pabeigtos darbus, lai uzturētu datubāzi tīru:

PHP
$count = Queuety::purge();     // uses QUEUETY_RETENTION_DAYS (default: 7)
$count = Queuety::purge( 30 ); // purge jobs older than 30 days

Izmantojot CLI:

Apvalks
wp queuety purge
wp queuety purge --older-than=30