Add NATS JetStream as a publish queue

Aperta
#1,194 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 3 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
go

Direzione di ricerca

The payload names no files. Start by reading how the existing publish-queue providers for RabbitMQ, SQS and GCP Pub/Sub consume messages, acknowledge them and handle redelivery, and how the existing NATS JetStream internal queue is configured. Done means a configured JetStream stream and subject feed events through normal topic and destination matching, with acknowledgement and redelivery matching the other providers.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Is your feature request related to a problem? Please describe.
Outpost cannot currently subscribe to NATS Jetstream's stream as an event source. It uses JetStream for its internal queues? We can’t use it to ingest events and route them to configured destinations.

Describe the solution you'd like
Allow Outpost to be configured to subscribe to NATS JetStream stream and subject. When an event arrives, Outpost should process it through its normal topic and destination matching, then deliver it to the matching webhook or other destination.

The integration should follow the same approach as Outpost’s other publish-queue providers, including appropriate message acknowledgement and redelivery behavior.

Describe alternatives you've considered
We could run a separate bridge that consumes from JetStream and calls Outpost’s  /api/v1/publish  endpoint. This adds another service and another network hop.

Additional context
Outpost already supports NATS JetStream for internal delivery and logging queues. This request is for using JetStream as an incoming publish queue, similar to the existing RabbitMQ, SQS, and GCP Pub/Sub integrations.

Lingua principale
Go
Stelle
1.1k
Fork
70
Merge medio
3g 9h
PR unite (30g)
34

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di hookdeck/outpost

Tutte le issue di hookdeck/outpost

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.