Rehber

Çok müşterili SaaS mimarisinde temel kararlar

Çok müşterili SaaS ürünlerinde tenant sınırı, veri yerleşimi seçenekleri, yetki ve abonelik ayrımı ile müşteri izolasyonu testleri için teknik rehber.

Kısa yanıt

Çok müşterili SaaS mimarisinin temeli, müşteri (tenant) bağlamının uygulamanın her katmanında korunmasıdır: oturum, sorgu, dosya yolu ve arka plan işi dahil. Veri yerleşimi (ortak şema, ayrı şema, ayrı veri tabanı) operasyon, maliyet ve izolasyon gereksinimlerine göre seçilir; tek bir doğru yoktur.

Tenant sınırı

Müşteri hesabı uygulamanın her katmanında tutarlı tanımlanmalıdır. Kullanıcı oturumundan veri tabanı sorgusuna, dosya yolundan arka plan işine kadar tenant bağlamı korunmalıdır.

Veri yerleşimi

Ortak şema, ayrı şema veya ayrı veri tabanı seçenekleri operasyon, maliyet ve izolasyon gereksinimleriyle değerlendirilir. Tek bir yaklaşım bütün ürünler için doğru değildir.

Yetki ve abonelik

Kullanıcının rolü ile müşterinin paket hakkı farklı kavramlardır. İkisi sunucu tarafında doğrulanmalıdır. Sadece arayüzde özelliği gizlemek erişimi engellemez.

Test ve işletim

Bir müşterinin başka müşterinin kaydına, dosyasına veya raporuna erişemediği test edilmelidir. Kullanım ölçümü, kuyruklar ve izleme tenant bağlamını taşımaya devam etmelidir. Ölçekleme kararları gerçek yük üzerinden verilmelidir.

Veri yerleşimi seçeneklerinin dengesi

Ortak şema en düşük maliyetli ve işletmesi en kolay seçenektir, ancak her sorguda müşteri kimliğinin doğru uygulanmasına dayanır. Ayrı şema veya ayrı veri tabanı daha güçlü izolasyon ve müşteri bazında yedekleme sağlar, fakat işletim ve geçiş yükünü artırır. Müşteri profiliniz, yasal gereksinimler ve ekip kapasiteniz tercihi belirler.

Uygulamaya geçmek için bir çalışma

Aynı kullanıcı rolünü iki farklı müşteri hesabında deneyin. Listeleme, arama, dosya indirme, dışa aktarım ve arka plan işlerinde müşteri sınırını ayrı test edin. Yetkilendirme yalnızca ekrandaki filtreye dayanmasın; sunucu işlemleri de kapsamı doğrulasın. Yedekten tek müşteriyi geri yükleme ve müşteriye özel veriyi silme ihtiyaçlarını veri modeli kararından önce değerlendirin. Bu kararları kendi ürünümüz LiftOfis üzerinde de uyguluyoruz.

Sık sorulan sorular

Bu konuda sık sorulan iki soru.

Müşteri verisini ayrı veri tabanlarında mı tutmalıyım?

Duruma bağlıdır. Az sayıda büyük ve yüksek izolasyon isteyen müşteriniz varsa ayrı veri tabanı mantıklı olabilir; çok sayıda küçük müşteri için ortak şema genellikle daha uygundur. SaaS mimari ve teknik danışmanlık hizmetimiz bu kararı müşteri profilinize göre değerlendirir.

Bir müşterinin başka müşterinin verisine erişemediğini nasıl doğrularım?

Listeleme, arama, dosya indirme, dışa aktarım ve arka plan işlerinde müşteri sınırını ayrı ayrı test edin ve yetkilendirmeyi yalnızca arayüz filtresine bırakmayın. Bu testleri otomatikleştirmek, sonraki değişikliklerde gerilemeyi yakalar.

Kaynaklar ve ileri okuma

İlgili hizmet

SaaS Mimari ve Teknik Danışmanlık ↗

SaaS ürününüzde müşteri izolasyonu, ölçekleme, maliyet ve abonelik akışlarını ölçüm ve kodla değerlendirip önceliklendirilmiş bir iyileştirme planı sunuyoruz.

Bir sonraki adım

SaaS kararınızı birlikte değerlendirelim

Hedefinizi, mevcut araçlarınızı ve çözmek istediğiniz ihtiyacı kısaca paylaşın. Projeniz için uygun başlangıç noktasını birlikte belirleyelim.