Kampanya öncesi yük testi: Black Friday'den önce kırılma noktanızı bilin
Kampanya günü sorulacak soru "sistem ayakta kalır mı?" değil, "normal trafiğimizin kaç katını kaldırırız?" sorusudur. Bu sayıyı kampanyadan haftalar önce, düzeltecek zamanınız varken öğrenin. Bu sayfa provanın nasıl kurulacağını, nelere bakılacağını ve Spitfire'ın hazır şablonuyla birkaç dakikada nasıl başlanacağını anlatıyor.
Soruyu normalin katı olarak sorun
"Saniyede 400 istek" bir anlam taşımaz; "normal yoğun saatin 3 katı" taşır. Önce normal yoğun saatinizi bulun: erişim loglarınızda en yoğun saatin istek sayısını 3600'e bölün. Sonra yükü bu hızın katlarıyla, kademe kademe artırın: 1×, 2×, 3×, 5×. Her kademede birkaç dakika bekleyin ki kuyruklar ve önbellekler dengeye gelsin. Ölçütü önceden yazın: örneğin p95 800 ms'nin, hata oranı %2'nin altında. Sonuç tek cümledir: "3×'te tuttu, 5×'te tutmadı."
Kampanya trafiği yalnız daha fazla değil, farklıdır: kampanya sayfası, arama ve ürün detayı ağırlıklıdır; sepete ekleme ve ödeme oranı artar. Provadaki akışı bu karışıma yakın tutun. Kampanya saat 00:00'da başlıyorsa yük de rampa değil ani bir sıçramayla gelir; bunu ayrıca bir spike testiyle deneyin (test türleri).
Üç haftalık plan
- 1. hafta: ölçün. Provayı koşturun, normalin kaç katında kırıldığını ve neyin kırıldığını (gecikme mi, hata mı, hangi adım) yazın.
- 2. hafta: düzeltin. En dar boğazdan başlayın: veritabanı connection pool'u, yavaş bir sorgu, önbelleğe alınmayan bir liste, autoscaling'in tepki süresi.
- 3. hafta: tekrar koşturun ve planlayın. Aynı testi aynı ortamda tekrar koşturun ve iki koşuyu karşılaştırın. Kırılma noktası koşusunun kapasite kartı, hedef trafik için kaç sunucu gerektiğini bir aralık olarak tahmin eder.
- Kampanya haftası: yük testi yok. Kod dondurulur; ana akışı canlıda düşük yükle ve düzenli aralıklarla sentetik izlemeyle izleyin.
Provadan önce kontrol edin
- WAF ve hız sınırları. Yük üretecinin adresini izin listesine alın; yoksa ölçtüğünüz sisteminiz değil güvenlik duvarınızın sınırıdır (429 ya da 403 yağmuru).
- Dış servisler. Ödeme, SMS ve kargo sağlayıcılarına yük göndermeyin; bunların yerine mock servis kullanın.
- Veri. Tek bir ürünü değil, gerçekçi bir ürün yelpazesini çağırın; aynı kaydı tekrar tekrar istemek önbellekte kalır ve sistemi olduğundan güçlü gösterir.
- Alarmlar. Ekibe provanın saatini bildirin; alarmlar çalarsa bu da bir bulgudur: kampanya gecesi aynı alarm hangi kademede çalar?
Spitfire ile dört adımda
- Spitfire'ı tek komutla Docker'a ya da Kubernetes'e kurun (kurulum rehberi) ve ücretsiz anahtarı girin.
- Testler → Şablondan → Kampanya provası: sitenizin adresini, ürün listesi ve ürün detayı yollarını ve normal yoğun saatte saniyedeki ziyaret sayısını girin. Kademeler bu sayıdan hesaplanır (20 için 20 → 40 → 60 → 100 ziyaret/sn), her kademe 2 dakika.
- Çalıştır. p95 800 ms'yi ya da hata oranı %2'yi aştığı, ya da sistem hedef hızın gönderilemeyeceği kadar yavaşladığı anda koşu durur; sisteminizi gereğinden uzun zorlamaz.
- Sonucu okuyun. Koşu sayfasının başındaki "Ne gördük" özeti ve bulgular koşunun neden durduğunu söyler; grafiklerde hangi kademede koptuğunu görürsünüz. Aynı sonuç HTML ve PDF rapor olarak da alınır. Gerçek bir koşunun raporu: örnek rapor.
Sepet ve ödeme adımlarını eklemek için testi editörde açın; giriş, sepet ve ödeme akışı için hazır bir örnek de örnekler sayfasında. Sisteminizin OpenTelemetry ya da Prometheus verisi bağlıysa koşu sayfası, kırılan kademede hangi servisin yavaşladığını da gösterir.
Kampanya tarihiniz yakınsa ve sisteminiz büyükse 30 günlük pilota başvurun: başvuru formuna kampanya tarihinizi yazın, ilk testi sizin akışınıza göre hazırlayıp e-postayla gönderelim.