İçeriğe geç
parazade

Tek Hata Noktası Nedir?

İngilizce: Single Point of Failure

Yayın: · Son güncelleme:

Tek Hata Noktası Nedir? Kısaca

Tek hata noktası (single point of failure), bir sistemde arızalandığında tüm sistemin çalışmasını durduran ve yedeği bulunmayan bileşendir. Tek bir sunucu, tek bir veritabanı ya da tek bir internet bağlantısı tipik örneklerdir.

Tek Hata Noktası nedir?
İçindekiler
  1. Tek hata noktası nedir?
  2. Örnekler
  3. Nasıl önlenir?

Tek hata noktası nedir?

Tek hata noktası, zincirin en zayıf halkasıdır. Sistemin geri kalanı ne kadar sağlam olursa olsun, bu bileşen çöktüğünde her şey durur. İngilizcede single point of failure, kısaca SPOF olarak anılır.

Kavram yalnız donanımla sınırlı değildir. Bir yazılım bileşeni, bir dış servis, hatta sistemin şifresini bilen tek bir çalışan da tek hata noktası olabilir.

Örnekler

Varsayımsal bir e-ticaret sitesi düşünün. Site üç web sunucusunda çalışıyor ve önlerinde bir yük dengeleyici var. Ama tüm sunucular aynı tek veritabanına bağlı. Veritabanı sunucusunun diski bozulduğunda üç web sunucusu da sipariş alamaz hâle gelir.

Daha gündelik örnekler de vardır:

  • Ofisin tek internet bağlantısı kesilince tüm ekip çalışamaz.
  • Alan adının yenileme tarihi tek bir kişinin e-postasına gidiyorsa ve o kişi ayrılmışsa site kapanabilir.
  • Tüm sunucular aynı veri merkezindeyse bir elektrik kesintisi hepsini etkiler.

Nasıl önlenir?

Temel çözüm yedekliliktir: kritik her bileşenin bir kopyası olmalı ve biri arızalandığında diğeri işi devralmalıdır. Veritabanı replikasyonu, birden fazla sunucu, farklı bölgelerdeki veri merkezleri ve yedek internet hattı bu amaçla kullanılır.

Tespit için sisteminizin bir şemasını çizip her kutu için "bu çökerse ne olur?" diye sorun. Cevap "her şey durur" ise orada tek hata noktası vardır. Her riski ortadan kaldırmak pahalıdır; önce kesintinin en çok zarar vereceği noktalardan başlayın.

Sıkça Sorulan Sorular

Yük dengeleyici tek hata noktası olabilir mi?

Olabilir. Sunucuları yedeklemek için kurulan tek bir yük dengeleyici, arızalandığında tüm trafiği keser. Bu nedenle kritik sistemlerde yük dengeleyiciler de yedekli kurulur.

Bulut kullanmak tek hata noktalarını ortadan kaldırır mı?

Kendiliğinden kaldırmaz. Tüm kaynaklarınız tek bir bölgede ve tek bir sunucudaysa bulutta da tek hata noktası oluşur. Bulut yalnız yedekli yapı kurmayı kolaylaştırır.

İlgili terimler

Hata Toleransı(Fault Tolerance)Hata toleransı (fault tolerance), bir sistemin bileşenlerinden biri ya da birkaçı arızalandığında bile kesintisiz ya da kabul edilebilir düzeyde çalışmaya devam edebilme yeteneğidir. Yedeklilik ve otomatik devralma ile sağlanır.Yüksek Erişilebilirlik(High Availability)Yüksek erişilebilirlik (high availability, HA), bir sistemin arıza olduğunda bile kesintisiz ya da çok kısa kesintiyle çalışmaya devam edecek şekilde tasarlanmasıdır. Yedek bileşenler ve otomatik devralma ile sağlanır.Yük Dengeleme(Load Balancing)Yük dengeleme (load balancing), gelen trafiği birden fazla sunucu arasında dağıtarak hiçbir sunucunun aşırı yüklenmemesini ve hizmetin kesintisiz sürmesini sağlayan yöntemdir.Replikasyon(Replication)Replikasyon, bir veritabanındaki verilerin bir veya daha fazla sunucuya sürekli olarak kopyalanmasıdır. Sunuculardan biri arızalandığında hizmetin sürmesine ve okuma yükünün birden fazla sunucuya dağıtılmasına yardımcı olur.Bileşen(Component)Bileşen (component), bir yazılımın ya da kullanıcı arayüzünün kendi görevi olan, bağımsız ve yeniden kullanılabilir parçasıdır. Web geliştirmede düğme, ürün kartı ya da menü gibi arayüz parçaları bileşen olarak yazılır.Veritabanı(Database)Veritabanı, verilerin düzenli, aranabilir ve güncellenebilir biçimde saklandığı elektronik kayıt sistemidir. Müşteri listeleri, siparişler ve ürün bilgileri gibi veriler veritabanlarında tutulur.Web Sunucusu(Web Server)Web sunucusu, tarayıcılardan HTTP veya HTTPS üzerinden gelen istekleri karşılayan ve karşılığında web sayfası, görsel ya da veri gönderen yazılımdır. Bu yazılımın çalıştığı bilgisayara da web sunucusu denir.Sunucu(Server)Sunucu (server), ağ üzerinden başka bilgisayarlara ve cihazlara veri, dosya, web sayfası ya da uygulama hizmeti sağlayan bilgisayar veya yazılımdır. İstek gönderen tarafa istemci denir.