Genellikle gazetecilik ve özel işlerimi ayrı ayrı yerlerde tutarım. İşime gelecek br şeyin haberini yapmam ya da bir işimi halletmek için gazeteciliği devreye sokmam. Bilenler bilir. Genelde özel hayatımda beni sinirlendirmiş bir konuyu da gündeme taşımam. Ama bu sefer yaptım. Çünkü özel hayatım dediğim şey sizlerle iletişim kurduğum internet sitemdi. Bir şekilde gece saatlerinde Yandex, botlarını siteme saldı. Sitede inanılmaz derecede bir trafik oluştu ve bir süreliğine kapalı kaldı. Çevremde konuyu payaştığım insanlar bu gibi sorunların kendi başlarına geldiğini belirtti. Ben de bununla ilgili sorularımı Yandex’e gönderdim. Soruları ve cevapları sizlerle paylaşıyorum:
1. Yandex botlarının yönelimi konusunda getirdiği yük neye göre ayarlanıyor? Bunun yarattığı trafik konusunda bilgi verebilir misiniz?
Crawler algoritması bir çok faktörü değerlendirerek bir siteyi daha fazla veya daha az sıklıkla indekslemesi gerektiğine karar verebilir. Sitenin yanıt hızı ve diğer bazı faktörlere göre tarama hızını otomatik olarak ayarlar.
2. Normal şartlarda robots.txt dosyasıyla gelen bot yükünü, gelip gelmeyeceğini ayarlayabiliyorduk. Ne var ki Yandex botları bu konuda ne yazmış olursak olalım bizi umursamıyor ve gelmeye edvam ediyor. Bunun nedeni konusunda sizden bilgi alabilir miyim?
Yandex robots.txt komutlarını kesin bir şekilde uygulamaktadır. Yapılan değişikliklerin yansıması bir kaç saat alabilir.
– robots.txt üzerinde yaptığınız değişiklikler 05 Ocak2016 03:08:51 GMT tarihinde tarafımıza yansımış bulunuyor.
3. Böylesi yoğun ve etkin bir bot “saldırısı” için sitelerden onay alıyor musunuz? Yani ben siz gelmeyin diye size komut vermek zorunda değilim siz bana gelmek için benden izin istemek durumundasınız diye düşünüyorum. Yanılıyor muyum?
Arama motorları her gün ziyaret ettikleri milyonlarca sayfa için site sahiplerinden izin almamaktadır. Web üzerindeki her türlü dökümanı ziyaretçilerle buluşturmak, web sitelerine trafik, kullanıcılara aradıkları içeriği sağlamak için bulabildikleri tüm dökümanları ziyaret etmekte ve indekslemektedirler. Bunlar arasında site sahibinin engellemek istedikleri varsa robots.txt veya webmaster araçları vasıtasıyla durumu arama motorlarına bildirmektedirler.
İçerik engelleme dışında sizin yaşadığınız ve benzeri sorunları çözmek için de crawl-delay gibi bir çok direktif standart olarak bulunmaktadır.
Yandex ve diğer arama motorları bu işlemleri mümkün olduğunca otomatik olarak yerine getirmektedir.
4. Bir siteyi bir saati aşkın süre kapalı durumda bırakmak sizin için kabul edilebilir bir durum mudur?
Bu durum bizim için kabul edilemez. Sorunun nedenini anlamak, istisnai bir durum varsa tespit etmek için tüm imkanlarımızla çalışırız.
5. Botlarınız ne kadar kaynak artırılırsa o kadar yoğun gelmeye devam ediyor. IP yasaklamalarımızı takiben farklı IP’ye geçerek gelmeye devam ediyor. Bunun DDOS saldırılarından farkını söyleyebilir misiniz?
Yandex botlarının IP adresleri Yandex tarafından kullanıcılara sağlanan bir veri değildir. Kendi imkanlarınızla tespit ettikleriniz dışında da adreslere sahip olabilirler. Engellediğiniz aralığın dışında kalan botlar sitenize gelmeye devam edecektir (robots.txt v.b. bir engelleme getirmediğiniz taktirde). Bu durumda farklı IP’ye geçmek gibi bir teknik uygulanmamaktadır.
6. Doğal rakibiniz olan diğer arama motorlarının botlarıyla herhangi bir sıkıntı yaşanmazken sizin botlarınızla yaşanması konusunu nasıl açıklayabiliyorsunuz?
Bunun için sorunun asıl nedenini belirlememiz gerekir. Öncelikle durumun bizim log’larımızda nasıl göründüğüne bakalım.
- Toplamda sadece 5 saniye boyunca saniyede 3 request yapmışız. 68 saniye/defa da saniyede 2 request ile crawling işlemi gerçekleştirilmiş. Bunun dışında 4-5 Ocak tarihlerinde en fazla saniyede 1 request, genelinde de bunun altında değerlerde crawling yapılmış. Network’teki veri transfer gecikmeleri nedeniyle bazı request’lerin birikip toplu halde gelmiş olma olasılığını değerlendirebiliriz. Bunu da ancak sizin loglarınızdan öğrenebiliriz.
-
Botlar 4 Ocak tarihinde daha önce sitenize yaptığımızdan daha fazla ziyaret gerçekleştirmiş. Bu, crawler’ın çeşitli parametreleri değerlendirerek sitenize daha fazla önem vermeye karar vermiş olması nedeniyle olabilir. Bu durumda kısa bir süreliğine yapılan saniyede 3 request’in günümüzde sıkıntı yaratacak bir yoğunluk olmadığı değerlendirilmektedir. Dolayısıyla sitenizin neden kapalı kaldığını anlamamız önemli:
RPS (requests per second) fazlalığı
Bu request’ler sırasında download edilen verinin çok büyük olması (örneğin 1 sayfanın 3MB olması gibi)
Request’ler nedeniyle sunucunun CPU kaynaklarının tükenmesi.
Bunlardan hangisinin sitenizi işlemez duruma getirdiğini anlarsak daha net bir sonuca ulaşabiliriz.
Şimdi işin mantık tarafına gelelim: Ben sitem çökmesin diye Yandex’e komutlar göndermek zorunda değil. Daha neler! Yandex eğer bir siteden yavaş cevap geliyorsa oraya botlarını yığmak zorunda değil. robots.txt dosyasında değişikliklerin akşam 22:00 gibi değiştirildiğini öngörecek olursak bunun emrinin Yandex robotları tarafından gece 5 saat sonra alınması kabul edilebilir bir şey değil. Benim hayatımın önemli bir bölümü değil Yandex. Sitemi çökertme pahasına Yandex tarafından endekslenmesine izin verecek değilim. Kaldı ki sorularda da belirttiğim gibi eğer sitemde bir sorun varsa bu niye Google tarafından site çökerten bot saldırısı haline dönüştürülmüyor?
Yandex’in Türkçe karşılığı endeks. Endeksleme onların bu anlamda birincil işi ve başarısı olmalı. Bu anlamda Fenerli dostlarım Messi’yi alabilmek için benim siteme girerek arama yapamayacaklar üzgünüm. Ve şunu söyleyeyim, site loglarını Yandex ile paylaşmayacağım.