antirez / antirez/disque

GETJOB from ALL?

Aperta
#198 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C
Stelle
8.1k
Fork
532
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

I have a question regarding the implementation of queues in disque. In particular, does the code allow for an implementation of `GETJOB from *` or `GETJOB from ALL` to be written or does this break some fundamental assumptions about the segmentation of nodes or the distribution of queues across nodes?

In particular, this question pertains to the implementation of a _blocking_ means of obtaining one (or more) jobs across all queues without resorting to busy wait. I understand that `QSCAN` can be used to iterate over all queues and that can be combined with `GETJOB NOHANG` to in a tight loop to obtain a job across all queues, but that is obviously a waste of system resources.

This is useful if there is no set number of queues beforehand (e.g. a queue can be created by the code rather than being a part of the actual data structuring or partitioning) and queues are used for job management (e.g. flush all jobs of type x where x is simply a named queue) but no distinction is made as to which job should be executed.

Please correct me if I am wrong and this is already possible with the current API, in which case I humbly beg forgiveness for missing this detail.

Thank you.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.