99designs / 99designs/cmdstalk
Job priority not adhered to when consuming multiple tubes
- Lingua principale
- Go
- Stelle
- 76
- Fork
- 14
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
When I execute `cmdstalk -cmd my-command -tubes pages,listing`, cmdstalk [starts two "reserve loops"](https://github.com/99designs/cmdstalk/blob/fbd704da919d283643e673bd02efcf0221224b92/broker/broker_dispatcher.go#L48). There are two problems with this:
* Suddenly the concurrency to execute jobs becomes _two_. Instead of one. This can strain downstream resources if you are not prepared.
* Due the above, jobs with different priorities are not taken into account.
beanstalkd supports having a single connection to consume multiple tubes. That's the proposed fix here.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
The issue is in broker/broker_dispatcher.go where two reserve loops are started for multiple tubes. Examine how beanstalkd handles a single connection consuming multiple tubes. Look at the existing reserve loop logic and modify it to use a single connection while respecting job priorities. Test by running cmdstalk with the -tubes flag and verifying job order and concurrency.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- go
- Ambito
- backend, cli
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 45/100