Ana içeriğe geç

Ingest Deployment Contract

Bu sayfa, Qapu'nun veri kabul girisi olan Ingest servisinin Docker Swarm uzerindeki deployment contract'ini tanimlar.

Rol

Ingest servisi:

  • cihaz veya transport katmanindan gelen veriyi kabul eder
  • validation, duplicate kontrolu ve raw kabul davranisini yonetir
  • Redis working state ve DB kaydi ile pipeline'i baslatir

Benimsenen Model

  • stateless deployment
  • replica tabanli olceklenme
  • edge-facing ama kontrollu giris davranisi
  • qapu-public, qapu-app, qapu-data network uyeligi

Placement

Ingest worker node'larda replica olarak kosar.

Onerilen davranis:

  • replicas >= 2
  • load-balanced giris
  • readiness gate olmadan trafik almamali

Network

Tipik network uyeligi:

  • qapu-public
  • qapu-app
  • qapu-data

Kural:

  • Ingest dis trafik alabilir ama stateful servisleri dis dunyaya acmaz

Secrets ve Configs

Secrets

  • db credential'lari
  • redis credential'lari
  • kafka credential'lari
  • gerekiyorsa ingest auth/transport credential'lari

Configs

  • rate-limit ve flood kontrol ayarlari
  • duplicate detection tuning
  • ack davranis ayarlari
  • transport bazli threshold'lar

Health ve Readiness

Ingest icin process ayakta olmasi yeterli degildir.

Minimum readiness beklentisi:

  • DB baglamina ulasabilmeli
  • Redis yazim baglami hazir olmali
  • Kafka publish baglami kritikse bunun durumu bilinir olmali
  • config ve threshold seti yuklenmis olmali

Update Stratejisi

Onerilen davranis:

  • rolling update
  • start-first
  • healthcheck gate
  • trafik kesmeden rollout

Operasyonel Not

Ingest deployment contract'inda temel basari olcutu sunlardir:

  • veri kabul surekliligi
  • duplicate/flood korumasinin bozulmamasi
  • ACK guven modelinin rollout sirasinda korunmasi