Uyumluluk: Pactmark 0.2.x. HTTP adaptörü, Web standardı işleyiciler üzerinden tipli JSON
komutları ve Server-Sent Events sunar.
Tasarımın tamamı tekrardır
Şekil 1. İstemci gördüğü son sırayı saklar. Yeniden bağlandığında depo, o noktadan itibaren kalıcı olayları yeniden oynatır ve sonra yenilerini takip eder. Hiçbir şey kaybolmaz ve hiçbir şeyin sonsuza kadar tamponlanması gerekmez.Akışı tüketmek
Bağlantı kopması bir cevap değildir
Bu, en yaygın istemci hatasıdır:
Sonlanma durumunu öğrenmek için sorun:
Geri basınç bilinçli olarak sınırlıdır
Yavaş tüketiciler sınırlandırılır. Çalışma zamanı, okumayı bırakmış bir istemciyi beklerken akışın tamamını bellekte tutmak zorunda değildir — koşu hacmi büyüdükçe daha da önemli hâle gelen bir tasarım özelliği. Bir tüketici çok geride kalırsaafterSequence ile yeniden bağlanır ve depo kalıcı olaylardan yeniden
oynatır. Kalıcı log, tamponun kendisidir.
Her isteğin kimliğini doğrulayın
Her komut ve her inceleme isteği kimlik doğrulamasından geçer. “Herkese açık koşu görünümü” diye bir şey yoktur.Komutlar
Başlat, devam et, girdi gönder, karar ver, mutabakat yap, telafi et, iptal et — her biri
doğrulanmış bir
CommandContext ve idempotency anahtarıyla.İnceleme
Koşu durumu, olaylar, artifact’lar, doğrulama ve kanıt — her biri verdiğiniz yetkiyle
kapsamlandırılmış.
CommandContext’e eşleyin:
commandId’yi farklı içerikle yeniden kullanmak KAF_HTTP_IDEMPOTENCY_CONFLICT üretir. Aynı
içerikle yeniden kullanmak aynı sonucu döndürür — dengesiz bir ağın arkasında tam olarak istediğiniz
şey budur.
Hattaki hatalar
HTTP hataları, kararlı birKAF_* koduyla Problem Details kullanır. Koda göre dallanın, mesaja göre
asla:
Yanıt gövdeleri, loglardan farklı bir açıklama seviyesi kullanır. Bir not-found yanıtı, başka bir
tenant’ın kaynağının var olup olmadığını kasıtlı olarak söylemez — bkz.
Hata başvurusu.
Host’un sahip olduğu yapılandırma
CORS, kimlik bilgisi modu, CSRF, istek ve gövde boyutu sınırları, süre sınırları, admission ve açıklama davranışı — hepsi host yapılandırmasıdır. Adaptör sizin için varsayılan seçmez, çünkü doğru cevap istemcinizin birinci taraf bir panel mi yoksa üçüncü taraf bir entegrasyon mu olduğuna bağlıdır.HTTP başvurusu
Her rota, komut ve inceleme semantiğiyle.
Vercel dağıtımı
Rota adaptörünü bağlamak ve açık bir yanıtın neden arka plan worker’ı olmadığı.