
Yeni bir tasarım, farklı bir düğme metni veya değiştirilmiş bir akış deniyorsunuz. Doğrudan yayına almak riskli — ama tahminle karar vermek de öyle. Değişikliği önce bir kısım ziyaretçiye göstermek mümkün.
Bu yazı, hosting ortamında test ve kademeli yayın kurmayı ele alıyor.
İki Farklı Amaç
Ziyaretçileri bölmenin iki ayrı gerekçesi vardır:
| A/B testi | Kademeli yayın |
|---|---|
| Hangisi daha iyi sorusu | Bozuluyor mu sorusu |
| Sonuç ölçülür, kazanan seçilir | Sorun yoksa herkese açılır |
| Uzun sürer | Saatler veya günler |
| İstatistiksel anlamlılık gerekir | Hata oranı yeterli |
Bu ayrım önemlidir çünkü gereksinimleri farklıdır: kademeli yayın için istatistiksel analiz gerekmez, yalnızca hata oranının artmadığını görmek yeterlidir.
A/B testi ise ölçülebilir bir hedef ve yeterli örneklem gerektirir. Aksi hâlde rastgele dalgalanmayı sonuç sanarsınız.
Ziyaretçileri Bölmek
Kimin hangi sürümü göreceğini belirlemek için:
- Kararı bir kez verin ve saklayın. Çerezde.
- Aynı kullanıcı hep aynı sürümü görsün.
- Dağılım oranını ayarlanabilir yapın.
- Botları test dışı bırakın.
İkinci madde hem deneyim hem ölçüm için zorunludur: her sayfa yenilemesinde farklı sürüm gören bir kullanıcı hem kafası karışır hem ölçümü bozar.
Dördüncü madde ise veri kalitesini korur. Arama motoru botları test grubuna girerse hem sonuçlar bozulur hem farklı içerik gösterme sorunu doğabilir.
Botlara her zaman kontrol sürümünü göstermek, bu iki sorunu birden çözer.
Hosting'de Nasıl Kurulur?
Paylaşımlı hostingde uygulanabilir yöntemler:
| Yöntem | Özelliği |
|---|---|
| Sunucu tarafı bölme | Hızlı, sayfa titremez |
| İstemci tarafı değiştirme | Kolay ama titreme yapar |
| Ayrı adres kullanma | Basit, ama adres bölünür |
| Dış test aracı | Kurulum kolay, sayfa yavaşlar |
İkinci satırdaki sorun kullanıcı deneyimini bozar: önce orijinal içerik görünüp sonra JavaScript ile değiştirilirse, kullanıcı sayfanın titrediğini görür ve bu, ölçümü de etkileyecek kadar rahatsız edicidir.
Birinci satır en temiz sonucu verir. Sunucu, hangi sürümün gönderileceğine yanıt üretmeden karar verir ve tarayıcıya tek bir tutarlı sayfa gider.
Üçüncü satır ise basit ama SEO açısından dikkat gerektirir — iki adres aynı içeriği sunar ve kanonik etiketle yönetilmesi gerekir.
Önbellek Çakışması
Sayfa önbelleği kullanıyorsanız ciddi bir sorun doğar:
- A sürümü önbelleğe alınır.
- B grubundaki kullanıcıya da o sunulur.
- Test tamamen anlamsızlaşır.
Bu, test kurulumlarının en sık gözden kaçan tuzağıdır: önbellek, test grubu bilgisini dikkate almazsa herkes aynı sürümü görür ve ölçüm sahte olur.
Çözüm, önbellek anahtarına test grubunu dahil etmektir. Böylece her grup için ayrı bir önbellek kopyası tutulur.
Alternatif olarak test edilen sayfalar önbellek kapsamı dışında bırakılabilir — test süresince biraz yavaşlık kabul edilir.
Neyi Ölçmeli?
Test sonucunu belirleyecek metrik önceden seçilmelidir:
- Tek bir ana hedef belirleyin.
- Hedefi teste başlamadan yazın.
- Yan metrikleri de izleyin. Ama karar vermeyin.
- Yeterli örnekleme ulaşmadan bakmayın.
Dördüncü madde en sık ihlal edilen kuraldır: testin ilk gününde öne geçen sürüme bakıp karar vermek, rastgele dalgalanmayı sonuç sanmaktır.
Küçük örneklemlerde fark büyük görünebilir ve gün içinde tersine dönebilir. Karar, önceden belirlenen örneklem büyüklüğüne ulaşıldığında verilmelidir.
Üçüncü madde ise beklenmedik yan etkileri yakalar. Tıklama oranı artarken satın alma oranı düşüyorsa, kazanan sürüm aslında kaybettiriyordur.
Test Süresi
Süre belirlerken dikkat edilecekler:
| Kural | Neden |
|---|---|
| Tam hafta katları çalıştırın | Hafta içi ve sonu farkı |
| Kampanya dönemlerinde başlatmayın | Davranış normal değil |
| Erken durdurmayın | Yanlış sonuç riski |
| Çok uzatmayın da | Mevsimsel etki karışır |
Birinci satır sistematik bir hatayı önler: salı başlayıp cuma biten bir test, hafta sonu davranışını hiç ölçmez ve sonuç hafta içi kullanıcılara özgü kalır.
Bu, özellikle tüketiciye yönelik sitelerde ciddi bir sapma üretir.
Kademeli Yayın Akışı
Riskli bir değişikliği yavaş yaymak için:
- Küçük bir yüzdeyle başlayın.
- Hata oranını izleyin.
- Sorun yoksa oranı artırın.
- Sorun varsa anında geri çekin.
- Tam yayına ulaşınca eski kodu temizleyin.
Dördüncü madde bu yöntemin asıl değeridir: hatalı bir değişiklik tüm kullanıcılara değil yalnızca küçük bir kısmına ulaşır ve dakikalar içinde durdurulabilir.
Beşinci madde ise borç birikmesini önler. Eski ve yeni kodun bir arada durduğu bir yapı, zamanla anlaşılmaz hâle gelir.
İç Test Grubu
Yüzdeye dayalı bölmeden önce bir aşama daha vardır:
- Yalnızca kendi ekibinize açın.
- Bir çerez veya parametre ile etkinleşsin.
- Canlı ortamda, canlı veriyle test edin.
- Sorun yoksa yüzdeli yayına geçin.
Üçüncü madde test ortamının veremediği güveni sağlar: canlı ortamda gerçek veriyle yapılan bir test, test ortamında görülemeyen sorunları ortaya çıkarır — veri hacmi, gerçek yapılandırma, gerçek entegrasyonlar.
Bu aşama, yüzdeli yayına geçmeden önceki son süzgeçtir ve hiçbir kullanıcıyı etkilemez.
Test Sonrası Temizlik
Testler biriktiğinde kod karmaşıklaşır:
| Yapılacak | Neden |
|---|---|
| Kaybeden sürümü silin | Ölü kod kalmasın |
| Bölme mantığını kaldırın | Gereksiz koşul |
| Çerezleri temizleyin | Kullanılmayan veri |
| Sonucu belgeleyin | Gelecekte tekrar denemeyin |
Dördüncü satır kurumsal hafıza oluşturur: test sonuçlarını kaydetmeyen ekipler, iki yıl sonra aynı fikri yeniden test eder — ve aynı sonucu yeniden öğrenir.
Kısa bir kayıt yeterlidir: ne test edildi, ne kadar sürdü, sonuç neydi ve hangi karar verildi.
Bu tür test altyapısını dizin yapılandırması ve uygulama kodu üzerinden kurabileceğiniz hosting hizmeti ortamında, dış bir araca ihtiyaç duymadan sunucu tarafı bölme uygulanabilir.
Sonuç
A/B testi ile kademeli yayın farklı sorular sorar ve gereksinimleri farklıdır — kademeli yayın için istatistiksel analiz gerekmez, hata oranının artmadığını görmek yeterlidir. Kurulumda en sık gözden kaçan tuzak önbellektir: test grubu bilgisi önbellek anahtarına dahil edilmezse herkes aynı sürümü görür ve ölçüm sahte olur. Sonuca erken bakmayın; ilk gün öne geçen sürüme bakmak, rastgele dalgalanmayı sonuç sanmaktır. Ve testi tam hafta katlarında çalıştırın.
Sıkça Sorulan Sorular (SSS)
A/B testi ile kademeli yayın farkı ne?
A/B testi "hangisi daha iyi" sorusunu yanıtlar ve istatistiksel anlamlılık gerektirir. Kademeli yayın ise "bozuluyor mu" sorusunu sorar — hata oranının artmadığını görmek yeterlidir ve saatler içinde tamamlanabilir.
Testim çalışmıyor, herkes aynı sürümü görüyor?
Sayfa önbelleği devrede olabilir. Önbellek test grubu bilgisini dikkate almazsa, ilk üretilen sürüm herkese sunulur ve ölçüm anlamsızlaşır. Test grubunu önbellek anahtarına dahil edin veya test edilen sayfaları önbellek kapsamı dışında bırakın.
Sonuca ne zaman bakmalıyım?
Önceden belirlediğiniz örneklem büyüklüğüne ulaştığınızda. İlk günlerde öne geçen sürüme bakmak rastgele dalgalanmayı sonuç sanmaktır — küçük örneklemlerde fark büyük görünüp gün içinde tersine dönebilir.
Sayfa yüklenirken titriyor?
İstemci tarafı değiştirme kullanıyorsunuz — önce orijinal içerik görünüp sonra JavaScript ile değişiyor. Sunucu tarafı bölmeye geçin: sunucu hangi sürümün gönderileceğine yanıt üretmeden karar verir ve tarayıcıya tek bir tutarlı sayfa gider.