Ben Yığın taşması biliyordu önce Birkaç yıl önce, ben programcılar arasındaki rekabetin bir sürü bir ofiste çalışıyordu. Orada, ben RSS ile başka siteden veri almak için gerekli Drupal, PHP ile bir web sayfası kod vardı. Ne oldu önceden verileri almak için hiçbir yolu yoktu oldu: veri kendisi dinamik olduğu sayfanın içeriğine bağlı, bu yüzden PHP RSS verilerini almak için gittik sayfa birkaç saniye için yükleme durdu. Bu kötü oldu. Sayfası büyük bir liste üzerinden parametrelerin bir çift bağlıydı. Yani davance tüm olası kombinasyonları getiriliyor soru üzerinden oldu. Bu bir kardeş sitenin sonuçlarını dahil arama sayfasının bir çeşit oldu, ben düşünüyorum.
Bunu geliştirmek için yaptığı ilk şey, bir önbellek sistemi kurmak oldu. Sayfa yüklendiğinde, AJAX kullanarak, bu belirli bir sayfa için geri veritabanına RSS verilerini kaydedilmiş bir JavaScript yöntemi başlattı. Yani aynı sayfa tekrar talep ise, eski veri hemen gönderilecektir anlamına geliyordu. Gerekirse ve AJAX komut önbellek, yeni verilerle güncellenen olacaktı. Javascript hemen hemen geçerli sayfanın parametrelerini eşleşen bir GET komutu ile sitede gizli bir sayfa açtı. O ben ajax olmadan verileri önbelleğe anladım ki gün sadece bir çift daha sonra bulunuyor. (. O Gez noktaya kolay, İnan bana) Ama ben soruyorum sorun değil.
Ama ben hiç bir önbellekleme yapmak değil söylendi. Benim AJAX sayfa "API maruz" söylendi. Kötü niyetli bir kullanıcı tekrar gizli sayfasını vurabilecek ve tekrar Hizmet reddi saldırısı yapmak için bu. Benim AJAX zaten geçici bir çözüm olduğunu düşündüm, ama bu önbelleğe ihtiyaç vardı. Ama çoğunlukla: wasn't the DoS argument true of ANY page on the site? Benim gizli sayfa gerçeğini menülerde görünür ve herhangi bir içerik daha kötü hale iade etmedi muydunuz?
Dediğim gibi, programcılar arasındaki rekabetin bir çok oldu, yani oybirliği çevremdeki insanlar, haklı olabilirdi, ya da onlar yapıyor onlar değildi çünkü kötü bir şey yapıyor beni durdurmaya çalıştı olabilirsiniz . (Bu. Çok oldu) Ama ben hala merak ediyorum. Benim AJAX şey bir hack olduğunu tam olarak farkında idi. Ben en kısa sürede daha iyi bir şey buldum bu sistemi değiştirmek istedim, ama ben hiç önbelleğe daha da kötü olduğunu düşündüm. Hangi doğruydu? Bu mantıkla, TÜM AJAX API göstermiyor? Benim AJAX çirkin bir hack olduğu gerçeği geçmiş bakarsanız, gerçekten bu tehlikeli oldu?
Tekrar itiraf edeceğiz ve yine o çirkin, geçici bir düzeltme olduğunu, ama benim soru sunucu şeyler yapmak kılan hiçbir içerik döndüren bir "gizli" sayfa olan ilgili. Bu ne kadar korkunç?