Communication Deployment Contract
Bu sayfa, Qapu'nun cihaz downlink delivery truth katmani olan Communication servisinin Docker Swarm uzerindeki deployment contract'ini tanimlar.
Rol
Communication servisi:
- gercek command dispatch/ack/fail semanticlerini tasir
- Action, Automation ve API kaynakli command request'leri isler
- device delivery truth'unun operasyonel owner'idir
Benimsenen Model
- stateless deployment
- replica tabanli olceklenme
- internal-only service davranisi
qapu-appveqapu-datanetwork uyeligi
Placement
Communication worker node'larda replica olarak kosar.
Onerilen davranis:
replicas >= 2- healthcheck gate
- command concurrency ve idempotency mantigi deployment'tan bagimsiz ama rollout'ta dikkate alinmali
Network
Tipik network uyeligi:
qapu-appqapu-data
Dis dunyaya dogrudan acilmaz.
Secrets ve Configs
Secrets
- db credential'lari
- redis credential'lari
- kafka credential'lari
- downlink provider credential'lari varsa onlar
Configs
- timeout ayarlari
- retry tuning parametreleri
- command delivery davranis ayarlari
- provider endpoint bilgileri
Health ve Readiness
Communication icin process ayakta olmasi yeterli degildir.
Minimum readiness beklentisi:
- command dictionary erisimi kurulabilmeli
- kafka consume/publish icin gerekli baglam hazir olmali
- downlink provider baglanti on kosullari saglanmis olmali
Update Stratejisi
Onerilen davranis:
- rolling update
start-first- healthcheck gate
- rollout sirasinda yarim kalan dispatch semantics icin idempotency mantigi korunmali
Operasyonel Not
Communication deployment contract'indaki en kritik nokta su degildir:
- container ayakta mi?
Asil kritik nokta sudur:
- delivery truth semantigi rollout sirasinda bozulmadan korunuyor mu?