WEB / CASE async-result
202 döndü; iş neden tamamlanmadı?
HTTP acceptance, queue delivery, worker processing, persistence ve kullanıcı görünümünü ayrı kanıt katmanları olarak bağla.
Gözlem dosyası
Atlas export fixture’ı 202 ve job alias export-01 döndürüyor. Producer event’i accepted; worker observation yok; result store’da completed result gözlenmedi. Bu alias gerçek job veya kullanıcı verisi değildir.
Acceptance completion değildir
202 işin tamamlandığını söylemez. Queue delivery, consumer processing ve durable result ayrı adımlardır. Worker event’inin eksikliği işin kesin çalışmadığını da kanıtlamaz: gözlem kaynağının kapsamı ve zaman aralığı belirlenmelidir.
Retry duplicate delivery ihtimali yaratabilir. Bu tek başına duplicate business effect olduğunu söylemez. Idempotency key, transaction boundary ve result record bu soruyu ayrı kanıtlarla yanıtlar. HTTP correlation ID kendiliğinden idempotency sağlamaz.
İşletim ve doğrulama
Normal completion, delayed consumer ve repeated delivery fixed dallarını karşılaştır. UI accepted/running/completed/failed durumlarını ayırır. Yetki context’i worker’a kontrollü biçimde taşınır ve result okumasında yeniden değerlendirilir; queue’ya mesaj konması bu iki kontrolün kanıtı değildir.
SIRA SENDE
Bu hikâyeyi sen çöz.
Sonucu tahmin et, kanıtın sınırını bul ve nedenini kendi cümlenle anlat.
export-01 için 202 ve accepted producer kaydı var, worker/result gözlemi yok. Hangi bulgu kanıt sınırını doğru korur?
Sentetik vaka dosyasından seçilen gözlemler
- teaching job alias
- export-01
- HTTP status
- 202
- producer event
- accepted
- worker observation
- not observed
- result store
- completed result not observed
- 202 işin tamamlandığını kanıtlar; result yalnız gizlidir.
- Acceptance gözleniyor; completion gösterilmiyor, worker’ın kesin çalışmadığı da kanıtlanmıyor.
- Worker kaydı yoksa consumer’ın hiçbir zaman çalışmadığı kesindir.
Gerekçeli cevabı oku
Acceptance gözleniyor; completion gösterilmiyor, worker’ın kesin çalışmadığı da kanıtlanmıyor. — 202, queue delivery, consumer processing ve durable result ayrı kanıt katmanlarıdır. Dar bulgu acceptance’ın gözlendiği, completion’ın bu dosyada doğrulanmadığıdır; eksik worker kaydı ayrıca gözlem kapsamı gerektirir.
Repeated delivery branch’i görülüyor. “Aynı business effect iki kez oluştu” demeden hangi ayrımı yapmalısın?
- Bir HTTP correlation ID tüm duplicate effect’leri otomatik önler.
- İki delivery her zaman iki business effect demektir.
- Delivery tekrarını ayrı kaydet; effect için idempotency, transaction ve result kanıtını karşılaştır.
Gerekçeli cevabı oku
Delivery tekrarını ayrı kaydet; effect için idempotency, transaction ve result kanıtını karşılaştır. — Yanlış pozitif, transport/queue tekrarını business sonucu sanmaktan doğar. Correlation olayları bağlar; idempotency ve transaction davranışını kendiliğinden sağlamaz.
Normal completion, delayed consumer ve repeated delivery için sonuç ve yetki kontrollerini içeren regression planı yaz.
Gerekçeli cevabı oku
Normal branch’te acceptance, consumer processing ve completed durable result’ı ayrı ilişkilendiririm. Delayed consumer için UI accepted/running durumunu completion’dan ayırır; eksik gözleme bir zaman aralığı tanımlarım. Repeated delivery’de aynı operation için transaction/idempotency/result kanıtını karşılaştırırım; delivery tekrarını duplicate effect diye varsaymam. Worker’a taşınan authorization context kontrollüdür ve result read sırasında izin yeniden değerlendirilir. Queue’ya mesaj konması bu iki kontrolün kanıtı değildir.
□ Acceptance, processing ve durable result ayrı gözlemlerle bağlandı mı?
□ Delayed branch’te zaman aralığı ve UI state sınırı açık mı?
□ Repeated delivery ile duplicate effect ayrıldı mı?
□ Worker context ve result read authorization kontrolleri bağımsız mı?
Bu vakayla bağlantılı dersler · 8
Bu derslerdeki kavramlarla vakaya dön. Bağlantılar vaka kaydına yeni gözlem eklemez; farklı sorumlulukları birlikte incelemene yardımcı olur.