oppgavekøer
Oppgavekøer, eller oppgavekøer på norsk, er datastrukturer eller systemer som lagrer og ordner oppgaver som venter på å bli behandlet. De brukes i programvarearkitekturer for å skille produksjon av arbeid fra behandling av arbeid, slik at komponenter som produserer oppgaver ikke trenger å vente på at andre komponenter skal bli ferdige. Dette muliggjør asynkson bearbeiding, bedre utnyttelse av ressurser og jevnere belastning.
En oppgave kommer inn i køen fra en eller flere producenter og blir plassert i køen inntil
- FIFO-kø: først inn, først ut, vanligste type.
- Prioritetskø: oppgaver med høyere prioritet behandles først.
- Dead-letter kø: oppgaver som mislykkes etter flere forsøk blir flyttet hit for analyse.
- Forsinkede eller planlagte oppgaver: oppgaver som skal behandles senere.
- Vedvarende vs i minnet: vedvarende kjøer lagrer oppgaver på disk eller i databaser, mens andre er
- Enkle minnebaserte køer i applikasjoner.
- Meldingsmeglere og distribuerte køsystemer som RabbitMQ, Apache Kafka, og Amazon SQS.
- Førstehånds rammeverk for bakgrunnsoppgaver, som Celery (Python), Sidekiq (Ruby) og lignende.
Oppgavekøer brukes til bakgrunnsbehandling av lange oppgaver (for eksempel e-post, bildebehandling), arbeidsflyter i forretningsprosesser og hendelsesbaserte