İdempotent satın alma: bir sipariş asla iki kez alınmasın
Kısa cevap: satın alma adımını idempotent yapın. Place order'a basmadan önce bu sipariş için kalıcı bir kayıt defterini kontrol edin; zaten placed veya reconciled işaretliyse durun. Kaydı taahhüt anında yazın, her alıcı profilini yalnız bir işin kullanabileceği şekilde kilitleyin ve tıklamanın çalıştığını varsaymak yerine oluşan Amazon sipariş numarasını sipariş geçmişinden okuyun.
Çift alımlar gerçekte nasıl olur
- Tarayıcı Place order'dan sonra ama sonuç kaydedilmeden çöker. Yeniden başlatmada sipariş hâlâ alınmamış görünür.
- Onay sayfasındaki bir ağ zaman aşımı hata sayılır ve iş yeniden denenir.
- “Alındı” durumu yalnız bellekte tutulduğu için iki kuyruk aynı siparişi seçer.
- Otomasyon işlerken bir kişi siparişi elle satın alır.
Bunu önleyen kurallar
- Genel tekillik. Bir pazaryeri sipariş numarası havuzda bir kez bulunabilir — tekrarlar alım anında reddedilir.
- Açık durumlar. Sipariş adlandırılmış durumlardan geçer (işleniyor → satın alınıyor → satın alındı → geri yazıldı). “Satın alınıyor” tıklamadan önce kaydedilir; bir çökme iz bırakır.
- Kalıcı kayıt defteri. Satın alınmış ve uzlaştırılmış siparişler asla yeniden alınmaz — ne yeniden başlatmadan sonra ne ikinci bir kuyruktan.
- Alıcı profili başına tek iş. Profil kilidi aynı hesapta iki sepeti engeller.
- Varsayma, geri oku. Amazon sipariş numarası ve toplam, ürün ve tutarla sipariş geçmişinde eşleştirilir.
“Satın alınıyor”da takılan siparişle ne yapılmalı
Asla otomatik yeniden denemeyin. Taahhüt sırasında kesilen bir sipariş, alıcı hesabının sipariş geçmişine insan gözüyle bakılmasını gerektirir: alım varsa kaydedin, yoksa serbest bırakın. Bu tek kural çift alım senaryolarının neredeyse tamamını ortadan kaldırır.
Cloverlight Order Bot bu durumları ve kayıt defterini uçtan uca uygular; belirsiz her siparişi tahmin etmek yerine elle incelemeye yönlendirir.
Sık sorulan sorular
Satın almada idempotent ne demek?
Aynı sipariş için satın alma adımını birden çok kez çalıştırmanın, bir kez çalıştırmakla aynı etkiyi yaratması — kaç yeniden deneme olursa olsun ürün tek kez alınır.
Zaman aşımına uğrayan bir alım otomatik yeniden denenmeli mi?
Hayır. Sipariş düğmesinden sonraki bir zaman aşımı başarılı olmuş olabilir. Önce alıcı hesabının sipariş geçmişini kontrol edin, sonra siparişi kaydedin veya serbest bırakın.
Kendi operasyonunuzla ilgili bir sorunuz mu var?
Üzerinde çalıştığınız şeyi anlatın, size e-posta ile dönüş yapalım.
Bize ulaşın