← Tüm yazılar

Multi-Tenant Mimari Nedir?

3 Şubat 2026 · Atakan Güloğlu

3 dk okuma~419 kelime·RSS ile takip et
Paylaş:
Multi-Tenant Mimari Nedir?

Multi-tenant mimari, tek bir uygulamanın birden fazla şirket veya organizasyon tarafından ortak kullanılması prensibine dayanır. ABP Framework, bu yapıyı mimarinin merkezine alarak tenant bazlı veri ayrımı, yetkilendirme ve uygulama akışlarını otomatik şekilde yönetir. Bu yaklaşım; modüler yapı, sürdürülebilir kod organizasyonu ve kurumsal ölçekte ölçeklenebilir uygulamalar geliştirilmesini kolaylaştırır.

ABP Framework Üzerinden Pratik Bir Bakış

Kurumsal yazılımlarda tek bir uygulamanın birden fazla şirket, organizasyon veya müşteri tarafından kullanılması sık karşılaşılan bir ihtiyaçtır. Bu ihtiyaca verilen en yaygın cevaplardan biri multi-tenant (çok kiracılı) mimaridir. Bu yazıda, multi-tenant kavramını temel hatlarıyla ele alıp, ABP Framework’ün bu konudaki yaklaşımını pratik örnekler üzerinden açıklıyorum.


Multi-Tenant Mimari Ne Sağlar?

Multi-tenant mimaride:

  • Tek bir kod tabanı bulunur

  • Birden fazla tenant (şirket / organizasyon) aynı uygulamayı kullanır

  • Veriler tenant bazında ayrıştırılır

  • Yetkilendirme ve erişim tenant sınırları içinde çalışır

Bu yapı; bakım maliyetini düşürür, ölçeklenebilirliği artırır ve SaaS tabanlı ürünlerin temelini oluşturur.


ABP Framework’te Multi-Tenant Yaklaşımı

ABP Framework, multi-tenant yapıyı çekirdek mimarinin bir parçası olarak ele alır. Tenant kavramı; veri erişimi, yetkilendirme ve uygulama servisleri boyunca otomatik olarak taşınır.

Öne çıkan noktalar:

  • Tenant çözümleme (header, subdomain, token vb.)

  • Repository ve DbContext seviyesinde tenant filtreleme

  • Yetki ve rol yapılarının tenant bazlı çalışması

  • Tenant bağımsız (host) ve tenant bağlı işlemlerin ayrımı

Bu sayede geliştirici, her sorguda manuel tenant kontrolü yazmak zorunda kalmaz.


Pratik Bir Sorun: Organizasyon Yapıları ve Tenant Ayrımı

Gerçek projelerde karşılaşılan yaygın problemlerden biri; organizasyon hiyerarşilerinin tenant ayrımı sonrası kopmasıdır.
Örneğin:

  • Bir çalışanın yöneticisi farklı bir tenant altında kalmış olabilir

  • Departman–pozisyon ilişkileri tenant filtreleri sebebiyle eksik dönebilir

Bu noktada çözüm, sadece veriyi getirmek değil; sistemi bozmadan tutarlılığı korumaktır. ABP tarafında bu tür durumlar genellikle:

  • İlişki analizleri

  • Tenant bazlı veri doğrulama

  • Ara bağlantıların yeniden kurgulanması
    gibi adımlarla ele alınır.

Yetkilendirme ve Rol Yönetimi

ABP’nin permission tabanlı yetkilendirme modeli, multi-tenant sistemlerde ciddi avantaj sağlar. Roller tenant bazında tanımlanabilir ve her tenant kendi yetki setine sahip olabilir.

Bu yapı sayesinde:

  • Aynı rol adı farklı tenantlarda farklı yetkilere sahip olabilir

  • Merkezi bir permission yönetimi sağlanır

  • UI ve backend aynı yetki modeliyle çalışır

Veri Katmanı ve EF Core

ABP, EF Core ile birlikte çalışırken tenant filtrelerini otomatik olarak uygular. Bu durum:

  • Migration yönetimini

  • Performans optimizasyonlarını

  • Veri tutarlılığını

daha kontrollü hale getirir. Ancak karmaşık sorgularda tenant filtrelerinin etkisi mutlaka göz önünde bulundurulmalıdır.


Ön Yüz Tarafı: Multi-Tenant UI Gerçekleri

Multi-tenant mimari yalnızca backend konusu değildir. Ön yüzde:

  • Grid filtreleri

  • State storing

  • Dinamik formlar

  • Yetkiye göre UI davranışları

tenant farkındalığı ile ele alınmalıdır. Aksi halde kullanıcı doğru yetkiye sahip olsa bile eksik veya hatalı veriyle karşılaşabilir.


Sonuç

ABP Framework, multi-tenant uygulamalar geliştirmek için güçlü bir altyapı sunar. Ancak gerçek hayatta karşılaşılan problemler, çoğu zaman teorik mimarinin ötesindedir. Organizasyon yapıları, yetkilendirme senaryoları ve veri ilişkileri; dikkatli analiz edilmediğinde sistem bütünlüğünü zorlayabilir.

Bu nedenle multi-tenant projelerde:

  • Mimari kararlar erken alınmalı

  • Tenant ayrımları gerçek senaryolarla test edilmeli

  • Hem backend hem frontend tenant farkındalığıyla geliştirilmelidir

Yorumlar