Visualwebsiteoptimizer.com / adresine sahibim ve işletiyorum . Uygulama, müşterilerimin belirli metrikleri izlemek için web sitelerine eklediği bir kod snippet'i sağlar. Kod snippet'i harici JavaScript (site kodunun üstünde) olduğundan, bir müşteri web sitesini göstermeden önce, bir ziyaretçinin tarayıcısı uygulama sunucumuzla iletişim kurar. Uygulama sunucumuzun devre dışı kalması durumunda, tarayıcı bağlantı zaman aşımına uğramadan (genellikle 60 saniye) önce bağlantı kurmaya çalışır. Tahmin edebileceğiniz gibi, uygulama sunucumuzu herhangi bir senaryoda kapatmayı göze alamayız çünkü sadece web sitemizi ziyaret edenlerin değil, aynı zamanda müşterilerimizin web sitesi ziyaretçilerinin de deneyimini olumsuz etkileyecektir!
Şu anda farklı bir veri merkezinde (aslında farklı kıtada) bulunan bir yedekleme sunucusuyla DNS yük devretme mekanizmasını kullanıyoruz. Yani, uygulama sunucumuzu 3 ayrı konumdan izliyoruz ve arıza tespit edildiğinde, A kaydını değiştirerek sunucu IP'sini yedekliyoruz. Bu, çoğu tarayıcı için (TTL 2 dakika olduğu için) iyi çalışır, ancak IE, DNS'yi bir anlaşma katili olabilecek 30 dakika boyunca önbelleğe alır. Bu son yayınımıza bakın visualwebsiteoptimizer.com/split-testing-blog/maximum-theoretical-downtime-for-a-website-30-minutes/
Peki, uygulama veri merkezinin büyük bir kesintiye uğraması durumunda neredeyse anında bir yük devretme sağlamak için ne tür bir kurulum kullanabiliriz? Burada www.tenereillo.com/GSLBPageOfShame.htm adresini okudum , birden fazla A kaydına sahip olmanın bir çözüm olduğunu, ancak oturum senkronizasyonunu karşılayamayacağımızı (henüz). Keşfettiğimiz bir diğer strateji, biri uygulama sunucusuna, ikincisi ise ters bir proxy'ye (farklı bir veri merkezinde bulunur) işaret eden iki A kaydına sahip olmaktır. Bu stratejinin makul olduğunu düşünüyor musunuz?
Sadece önceliklerimizden emin olmak için, kendi web sitemizi veya uygulamamızı aşağıda tutabiliriz, ancak müşterilerimizin hizmet dışı kalma süreleri nedeniyle yavaşlamasına izin veremeyiz. Dolayısıyla, uygulama sunucularımızın devre dışı kalması durumunda varsayılan uygulama yanıtına yanıt vermek istemiyoruz. Boş bir yanıt bile yeterli olacaktır, sadece tarayıcının bu HTTP bağlantısını (ve başka bir şey) tamamlamaması gerekir.
Referans: yararlı olan bu konuyu okudum serverfault.com/questions/69870/multiple-data-centers-and-http-traffic-dns-round-robin-is-the-only-way-to-assure