Çok kiracılı mimari, tek bir yazılım kurulumunun birden fazla müşteriye (kiracıya) aynı anda hizmet verdiği, her müşterinin verisinin ve ayarlarının diğerlerinden yalıtıldığı yazılım tasarım yaklaşımıdır.
Çok kiracılı mimaride yazılımın tek bir kopyası çalışır, ancak her müşteri kendi verisini, kullanıcılarını ve ayarlarını görür; sanki yazılım yalnızca ona aitmiş gibi hisseder. Bir apartman gibi düşünülebilir: bina tektir, her dairenin kendi anahtarı ve eşyası vardır. Teknik olarak her kayıt hangi kiracıya ait olduğu bilgisiyle saklanır ya da her kiracıya ayrı veritabanı verilir; uygulama her istekte kiracıyı tanır ve yalnızca ona ait veriye erişir. Güncelleme tek yerde yapılır ve tüm kiracılara aynı anda yansır.
İşletme sahibi için neden önemli
Bir SaaS ürünü geliştiriyorsanız çok kiracılı mimari, maliyeti ve bakımı yönetilebilir tutan temel karardır. Her müşteriye ayrı kurulum yapıldığında yüz müşteri yüz ayrı sunucu, yüz ayrı güncelleme ve yüz ayrı sorun kaynağı demektir. Öte yandan bu mimarinin en kritik noktası veri yalıtımıdır: bir müşterinin başka bir müşterinin verisini görebilmesi kabul edilemez bir hatadır ve ürünün güvenilirliğini bitirir.
Örnek
Bir randevu yönetim platformu, kuaförlerden fizyoterapistlere kadar farklı işletmelere hizmet veriyor. Hepsi aynı yazılımı kullanıyor ama her işletme kendi müşterilerini, çalışma saatlerini ve hizmet listesini görüyor. Platform yeni bir özellik eklediğinde tüm işletmeler aynı gün kullanmaya başlıyor; hiçbirine ayrı kurulum yapılmıyor.
Sık yapılan hata
Kiracı ayrımını sonradan eklemeye çalışmaktır. Tek müşteri için yazılmış bir yazılımı çok kiracılı hale getirmek, çoğu zaman veri yapısını baştan kurmayı gerektirir. İkinci hata, kiracı yalıtımını yalnızca arayüzde yapıp veri katmanında ihmal etmektir; bir sorgu hatası tüm müşterilerin verisini karıştırabilir. Bu yüzden yalıtımın otomatik testlerle doğrulanması gerekir.
Teklif alırken sorulacak soru
Kiracı verileri hangi düzeyde ayrılacak: aynı veritabanında etiketle mi, ayrı veritabanlarında mı? Bir kiracının başka kiracının verisine erişemeyeceği nasıl test edilecek?
Sık sorulanlar
Çok kiracılı mimari güvenli mi?
Doğru tasarlandığında evet; birçok büyük bulut hizmeti bu modelle çalışır. Güvenlik, kiracı yalıtımının veri katmanında kurulmasına ve düzenli test edilmesine bağlıdır.
Büyük bir müşteri kendine ayrı kurulum isterse ne olur?
Bazı platformlar bunun için hibrit model sunar: çoğu müşteri paylaşımlı yapıda kalır, özel talep eden müşteri için ayrı bir örnek çalıştırılır. Bu karar baştan planlanmalıdır.