İçindekiler
- 1 Küçük SaaS ve API Projelerinde Multi‑Tenant Veritabanı Neden Kritik?
- 2 Multi‑Tenant Veritabanı Nedir, Tekil Mimardan Farkı Ne?
- 3 Multi‑Tenant Veritabanı Mimarisi Türleri
- 4 Küçük SaaS ve API Projeleri İçin Doğru Mimarinin Seçimi
- 5 Veritabanı Tasarım Detayları: İzolasyon, Güvenlik ve Performans
- 6 Hosting Mimarisi: Multi‑Tenant Veritabanını Nereye Koymalı?
- 7 Operasyonel Konular: Yedekleme, Deploy ve Tenant Taşıma
- 8 DCHost Üzerinde Pratik Mimari Önerileri
- 9 API Katmanı ve Rate Limiting’i Unutmamak
- 10 Özet ve Sonraki Adımlar
Küçük SaaS ve API Projelerinde Multi‑Tenant Veritabanı Neden Kritik?
Küçük bir SaaS paneli ya da sadece birkaç endpoint’ten oluşan bir API geliştirirken ilk başta her şey basit görünür: tek veritabanı, tek uygulama, tek sunucu. Ancak ilk 5–10 müşteriden sonra aynı sorular dönmeye başlar: Müşteri verilerini nasıl izole edeceğiz? Her yeni müşteri için ayrı veritabanı mı açmalıyız? Tek veritabanı büyüdükçe performans ne olacak? Yedekleme ve kurtarma senaryolarında kimi, nasıl geri döndüreceğiz?
Multi‑tenant (çok kiracılı) veritabanı mimarisi tam bu noktada devreye girer. Aynı uygulama kod tabanını kullanarak onlarca veya yüzlerce müşteriyi, mümkün olduğunca az operasyonel yükle ve uygun maliyetle barındırmanızı sağlar. Ancak yanlış seçilen mimari, ileride veri taşıma, raporlama, ölçekleme ve güvenlik tarafında ciddi duvarlara çarpmanıza neden olabilir.
Bu yazıda DCHost ekibi olarak, küçük ve orta ölçekli SaaS ve API projeleri için pratikte işe yarayan multi‑tenant veritabanı yaklaşımlarını ve bunları hangi hosting mimarisi üzerinde çalıştırmanız gerektiğini adım adım ele alacağız. Daha önce SaaS uygulamalarında çok kiracılı mimari türlerini daha derinlemesine anlattığımız rehberde genel resmi çizmiştik; burada özellikle veritabanı ve barındırma tarafındaki somut karar noktalarına odaklanacağız.
Multi‑Tenant Veritabanı Nedir, Tekil Mimardan Farkı Ne?
Basitçe söylemek gerekirse multi‑tenant veritabanı mimarisi, birden fazla müşterinin (tenant’in) verisinin aynı veritabanı altyapısı üzerinde barındırıldığı ama mantıksal, güvenliksel ve çoğu zaman performans açısından birbirinden izole edildiği yapıdır.
Karşısında ise single‑tenant yaklaşım vardır: Her müşteri için ayrı veritabanı, hatta bazen tamamen ayrı sunucu kullanırsınız. Bu model izolasyon açısından güçlüdür ama küçük SaaS projeleri için:
- Yönetmesi zor (her müşteri için ayrı şema güncellemesi, yedek planı, izleme),
- Maliyeti yüksek (fazla sayıda veritabanı/sunucu),
- Otomasyon gereksinimi ağır (provisioning, migration, versiyonlama)
Multi‑tenant model ise tam tersine:
- Kaynakları paylaştırarak maliyeti azaltır,
- Schema migration ve sürüm güncellemelerini tek yerden yürütmenizi sağlar,
- Basit bir MVP’den yüzlerce müşteriye doğru büyümeyi daha yönetilebilir kılar.
Elbette her çok kiracılı mimari aynı değil. Küçük SaaS ve API projeleri için doğru modeli seçebilmek adına önce temel türleri netleştirelim.
Multi‑Tenant Veritabanı Mimarisi Türleri
En basit ve en sık kullanılan modeldir. Tüm müşterilerin verisi aynı veritabanındaki aynı tabloları paylaşır. Ayrımı sağlamak için her tabloya bir tenant_id veya company_id alanı eklersiniz.
Örnek tablo yapısı:
users(id, tenant_id, name, email, ...)invoices(id, tenant_id, amount, status, ...)
Avantajları:
- Basitlik: Tek şema, tek migration seti, tek bağlantı stringi.
- Düşük maliyet: Küçük bir VPS veya orta seviye bir veritabanı sunucusu bile uzun süre yeter.
- Merkezi raporlama: Tüm müşterileri kapsayan toplu raporlar yazmak çok kolay.
Dezavantajları:
- İzolasyon: Kod tarafında
tenant_idfiltrelerini atlamak, yanlış join’ler yapmak veri sızıntısına yol açabilir. - Migration riski: Hatalı bir migration tüm müşterileri aynı anda etkiler.
- Çok büyük tenant’lar: Bir müşterinin devasa verisi, diğer tüm müşterilerin performansını etkileyebilir.
Küçük SaaS ve API projelerinde MVP aşamasında en çok tercih ettiğimiz model budur. ISO 27001 gibi ağır uyumluluk gereklilikleri yoksa ve tek bir ülkede, orta ölçekli işletmelere hizmet veriyorsanız bu yaklaşım uzun süre iş görür.
Bu modelde tüm müşteriler aynı veritabanını paylaşır ama her müşterinin kendi şeması (schema) vardır. Örneğin:
tenant_123.userstenant_456.users
Avantajları:
- Daha iyi izolasyon: Yanlışlıkla tenant_123 ile tenant_456 verisini karıştırmak daha zordur, çünkü tamamen farklı şemalardadır.
- Schema varyasyonları: Bazı büyük müşteriler için tablo yapısını hafifçe özelleştirmeniz gerektiğinde esneklik sağlar.
Dezavantajları:
- Schema yönetimi: Her tenant için migration uygulamanız gerekir; bu da otomasyon ihtiyacını artırır.
- Çoğalma: 500 müşteri → her tabloda 500 kopya anlamına gelir; yönetimsel karmaşıklık hızla artar.
Küçük SaaS’lerde bu model genellikle “ortak şema” modelini aşıp, ama her müşteri için ayrı veritabanına geçmeden önceki ara basamak olarak düşünülür. Çok müşterili bir CRM/ERP tarzı üründe birkaç kurumsal müşteriyi özelleştirmek için tercih edilebilir.
3) Her Müşteriye Ayrı Veritabanı (Database per Tenant)
Burada her müşteri için tamamen ayrı bir veritabanı (hatta bazen ayrı sunucu) açarsınız. Örneğin:
db_customer_1db_customer_2
Avantajları:
- Güçlü izolasyon: Bir veritabanı çökerse ya da migration’da sorun yaşarsa, sadece o müşteri etkilenir.
- Farklı SLA’ler: Büyük müşterilere farklı yedekleme, replikasyon, donanım ve bakım pencereleri sunabilirsiniz.
- Kolay taşıma: İsteyen müşterinin veritabanını alıp kendi altyapısına taşıması daha pratik olabilir.
Dezavantajları:
- Operasyonel yük: Migration, şema versiyonlama, izleme ve yedekleme süreçleri çok kiracılı shared modellerden daha karmaşık hale gelir.
- Maliyet: Çok sayıda küçük veritabanı, bağlantı sayıları ve bakım görevleri için ek kaynak ister.
Küçük SaaS ve API projelerinde bu mimariyi genellikle yalnızca çok büyük veya regulasyona tabi birkaç özel müşteri için kullanmayı öneriyoruz. Geri kalan kitle ortak veritabanında tutulup, seçili müşterilere “dedicated veritabanı” opsiyonu sunmak dengeli bir çözümdür.
4) Hibrit Modeller: Büyükler Ayrı, Küçükler Ortak
Gerçek hayatta çoğu SaaS ürünü tek bir modele sıkışmak zorunda kalmaz. Örneğin:
- Standart paket müşterileri: Ortak veritabanı + ortak şema.
- Kurumsal paket müşterileri: Ayrı veritabanı veya ayrı şema.
Böylece:
- Erken aşamada tek veritabanı ile hız ve maliyet avantajı kazanırsınız,
- Büyüdükçe problem çıkaran veya ayrı SLA isteyen müşterileri kademeli olarak ayırırsınız.
Hibrit yaklaşımı kurgularken, ileride taşıma operasyonlarını da düşünmek gerekir. Özellikle ortak veritabanındaki belirli bir tenant’ı alıp ayrı bir veritabanına taşımak için kimlik alanları, foreign key yapıları ve tutarlı bir yedek stratejiniz olmalıdır.
Küçük SaaS ve API Projeleri İçin Doğru Mimarinin Seçimi
Teoride mimari türlerini bilmek yeterli değil; hangi aşamada hangi modeli seçmeniz gerektiğini netleştirmek kritik. Daha önce küçük SaaS uygulamaları için doğru hosting mimarisini seçmeye odaklanan yazımızda altyapı perspektifini anlattık; burada veritabanı tarafıyla birleştirelim.
Aşama 1: MVP ve İlk 10–20 Müşteri
- Önerilen veritabanı modeli: Tek veritabanı, ortak şema (shared schema).
- Hedef: Hızlı geliştirme, minimum operasyonel yük.
- Tipik kullanım: SaaS faturalama, basit CRM, küçük ölçekte raporlama paneli, webhook tüketen API’ler.
Bu aşamada karmaşık şema varyasyonları ya da per-tenant veritabanı genellikle gereksizdir. Önemli olan:
- Tüm tablolarda tutarlı bir
tenant_idalanı olması, - SQL sorgularının her zaman tenant filtresiyle yazılması,
- Index’lerin tenant bazlı sorguları destekleyecek şekilde tasarlanmasıdır.
Aşama 2: 50–200 Müşteri ve Artan Yük
Bu noktada bazı müşteriler:
- Daha yoğun kullanım yapmaya,
- Diğerlerinden çok daha fazla veri üretmeye,
- Daha sert SLA ve performans beklentileriyle gelmeye
başlar.
Bu aşamada:
- Genel kitle için yine tek veritabanı + ortak şema kullanılabilir.
- Çok büyük veya regülasyonlu birkaç müşteri için ayrı veritabanı veya ayrı şema opsiyonu sunulabilir.
Burada önemli olan, kod tabanının baştan per‑tenant bağlantı ya da “tenant context” kavramına hazırlanmış olmasıdır. Örneğin:
- Node.js’te
requestcontext’ine tenant bilgisini en başta eklemek, - Laravel’de global scope veya middleware ile tenant filtreleri uygulamak,
- Veritabanı bağlantılarını tenant’a göre seçilebilir kılmak.
Aşama 3: Kurumsal Müşteriler, Coğrafi Yayılım ve Uyumluluk
Eğer ürününüz daha kurumsal segmente açıldıysa ya da birden fazla ülkede veri barındırma (veri yerelleştirme) zorunluluğu doğduysa, mimariyi şu eksenlerde düşünmeniz gerekir:
- Bazı müşteriler için tamamen ayrı veritabanı,
- Gerekiyorsa ayrı VPS veya dedicated veritabanı sunucusu,
- Coğrafi olarak farklı veri merkezlerinde (örneğin Türkiye ve Avrupa) dağıtık barındırma.
Bu aşamada veritabanı tasarımı tek başına yetmez; replikasyon, yedekleme ve felaket kurtarma stratejilerini de birlikte düşünmek gerekir. DCHost olarak bu tür senaryolarda çoğu zaman veritabanını ayrı sunuculara taşıma, gerektiğinde replikalar ekleme ve colocation/dedicated sunucu kombinasyonları tasarlıyoruz.
Veritabanı Tasarım Detayları: İzolasyon, Güvenlik ve Performans
Tenant Kimliği ve Satır Bazlı İzolasyon
Ortak şema kullandığınızda, her tablonun tenant bazında ayrılması için birkaç temel prensip hayati önem taşır:
- Tüm iş verisi tablolarında zorunlu
tenant_idalanı olmalı. tenant_idgenellikle integer ya da UUID olarak tutulabilir; tüm tabloda tutarlı tip kullanın.- Tüm sorgular, ilişkiler ve join’ler tenant filtresiyle yazılmalı; ORM seviyesinde global filtre kullanmak bu riski azaltır.
PostgreSQL kullanıyorsanız Row Level Security (RLS) ile her tenant için otomatik satır bazlı güvenlik sağlayabilirsiniz. MySQL/MariaDB tarafında ise genellikle uygulama katmanındaki filtrelere güvenirsiniz; bu yüzden test ve code review süreçlerinde tenant izolasyonu özel olarak kontrol edilmelidir.
Index Tasarımı: tenant_id + Sık Kullanılan Alanlar
Multi‑tenant veritabanında index tasarlarken klasik sorgu kalıplarını düşünün:
SELECT ... FROM invoices WHERE tenant_id = ? AND created_at > ?SELECT ... FROM users WHERE tenant_id = ? AND email = ?
Bu sorgular için tipik index desenleri:
INDEX invoices_tenant_created_at (tenant_id, created_at)UNIQUE INDEX users_tenant_email (tenant_id, email)
Böylece:
- Her tenant’ın verisi index içinde gruplanır,
- Hem performans, hem de benzersizlik kontrolleri tenant bazında yapılır.
Ortak veritabanında en sık yapılan hata, indexleri sadece email veya sadece created_at gibi alanlara kurup tenant_id’yi gözden kaçırmaktır. Bu durumda küçük SaaS projeleri bile birkaç yüz bin kayıt sonrası beklenmedik yavaşlamalar yaşamaya başlar.
Şema Değişiklikleri (Migration) ve Geri Alma Stratejisi
Multi‑tenant veritabanında her migration, aslında tüm müşterilere yansıyacak bir değişikliktir. Bu yüzden:
- Migration’ları önce staging ortamında, örnek tenant verileriyle test edin.
- Mümkünse idempotent ve geri alınabilir değişiklikler yapın (sütun drop etmek yerine önce kullanımını sonlandırma gibi).
- Canlıda çalıştırmadan önce otomatik yedek alın ve geri dönüş (rollback) planınızı yazılı hale getirin.
Daha büyük yapılarda MySQL tarafında online şema değiştirme araçları (örneğin gh-ost, pt-online-schema-change) hayat kurtarabilir. DCHost altyapısında yüksek trafik alan veritabanları için bu tür araçlarla neredeyse sıfır kesintiyle tablo değişiklikleri yapan pek çok müşteri görüyoruz.
Gizlilik ve Uyumluluk: Tenant Bazlı Yedek ve Silme
KVKK/GDPR gibi regülasyonlar söz konusuysa, multi‑tenant veritabanında şu sorulara önceden cevap vermeniz gerekir:
- Belirli bir tenant’ın verisi talep edildiğinde, onu mantıklı sürede nasıl silebilirsiniz?
- Yedeklerdeki veriler için ne kadar geriye dönük saklama yapacaksınız?
- Yedeklerden tek bir tenant’ı seçerek geri dönmek mümkün mü, yoksa tüm veritabanını mı dönmeniz gerekiyor?
Bu başlık, doğrudan çok kiracılı SaaS veri politikalarıyla ilişkilidir. Detaylı bir yol haritası için SaaS uygulamalarında müşteri verisi yedekleme ve veri saklama politikalarına odaklanan makalemize mutlaka göz atmanızı öneririm.
Hosting Mimarisi: Multi‑Tenant Veritabanını Nereye Koymalı?
Veritabanı modelini netleştirdikten sonra kritik soru şu: Bu yapıyı hangi hosting mimarisinde çalıştıracağız? DCHost olarak sıkça gördüğümüz birkaç temel desen var.
1) Tek VPS Üzerinde Uygulama + Veritabanı
Küçük SaaS ve API projeleri için başlangıçta en pratik ve ekonomik model, tek bir güçlü VPS üzerinde hem uygulamayı hem veritabanını barındırmaktır. Özellikle:
- Aktif kullanıcı sayısının düşük olduğu,
- Arka planda yoğun batch işlerin çalışmadığı,
- Veri hacminin birkaç on GB seviyesini geçmediği
senaryolarda gayet yeterlidir.
Bu modelde dikkat edilmesi gerekenler:
- Veritabanı için ayrı bir disk veya en azından ayrı bir dizin (örneğin NVMe depolama) kullanmak,
- Uygulama ve veritabanı kullanıcılarını işletim sistemi seviyesinde ayırmak,
- Düzenli otomatik yedekleri farklı bir DCHost sunucusuna veya obje depolama alanına kopyalamak.
Bu yaklaşım, ilk 20–50 müşteri için genellikle sorunsuz ilerler. Darboğazlar oluşmaya başladığında ölçeği büyütmek yerine, bir sonraki adıma geçmek daha doğrudur.
2) Ayrı Veritabanı Sunucusuna Geçmek
Uygulama tarafı CPU ağırlıklı iş yapıyor, veritabanı da giderek IO ağırlıklı hale geliyorsa, klasik çözüm uygulama ve veritabanını farklı sunuculara ayırmaktır. Bunu doğru zamanlamak için veritabanı sunucusunu uygulama sunucusundan ayırmanın ne zaman mantıklı olduğuna dair yazımızda detaylı sinyaller paylaşmıştık.
Tipik model şöyle olur:
- 1 adet DCHost VPS: API/SaaS uygulaması, kuyruk işleri, cron’lar.
- 1 adet DCHost VPS (daha yüksek RAM ve NVMe ağırlıklı): Sadece veritabanı.
Avantajları:
- Veritabanının CPU, RAM ve disk kaynaklarını bağımsız ölçekleyebilirsiniz.
- Bakım, yedek ve güvenlik ayarlarını veritabanı sunucusunda çok daha sıkı tutabilirsiniz.
- Uygulama sunucuları gerektiğinde yatay olarak çoğaltılabilir (load balancer arkasında).
3) Çok VPS’li Mimari, Replikasyon ve Yüksek Erişilebilirlik
Müşteri sayınız ve iş kritikliği arttıkça hedef sadece performans değil, yüksek erişilebilirlik olur. Bu noktada:
- Bir primary (yazma) veritabanı,
- Bir veya daha fazla read replica (okuma) veritabanı
ile çalışan bir mimari kurmak mantıklıdır. Böylece:
- Raporlama ve ağır SELECT sorgularını replica’lara kaydırabilirsiniz.
- Primary sunucuda sorun çıktığında hızlıca replica’yı yeni primary yapacak bir planınız olur.
MySQL/MariaDB veya PostgreSQL tarafında temel replikasyon kurulum adımlarını ve dikkat etmeniz gereken noktaları MySQL ve PostgreSQL replikasyonuyla yüksek erişilebilirlik kurulumunu anlattığımız rehberde detaylı şekilde işledik. Multi‑tenant veritabanı ile birlikte kullanıldığında, özellikle okuma ağırlıklı SaaS panellerinde ciddi nefes aldırır.
Operasyonel Konular: Yedekleme, Deploy ve Tenant Taşıma
Yedekleme Stratejisi: Tüm DB mi, Tenant Bazlı mı?
Multi‑tenant veritabanı için yedekleme stratejisi tasarlarken şu soruları mutlaka masaya koyun:
- Kaç günde bir tam yedek (full backup) alacağız?
- Aradaki saatlik/günlük artımlı yedeklerle (incremental) ne kadar veri kaybını tolere edebiliyoruz (RPO)?
- Bir hata olduğunda, tüm veritabanını mı, yoksa tek bir tenant’ı mı geri getirmemiz gerekiyor?
Küçük SaaS projelerinde çoğu zaman pratik çözüm:
- Belirli periyotlarda tam veritabanı yedeği,
- Olası sorunlu migration veya büyük kod dağıtımlarından hemen önce ekstra yedek,
- Yedeklerin farklı bir DCHost sunucusunda veya obje depolamada, şifreli ve sürümlü olarak saklanmasıdır.
Zero‑Downtime Dağıtım ve Şema Değişiklikleri
Multi‑tenant mimaride kod dağıtımı ve veritabanı migration’ları çoğu zaman çalışma saatlerine denk gelir; çünkü müşterileriniz farklı zaman dilimlerinde veya 7/24 aktif olabilir. Bu nedenle:
- Mümkün olduğunca geriye uyumlu migration’lar tasarlayın (önce yeni sütunu ekle, kodu yeni sütunu kullanacak şekilde güncelle, sonra eski sütunu kaldır).
- Uygulama sunucularında blue‑green veya rolling deployment kullanın; böylece kısa migration sürelerinde bile kesinti yaşamazsınız.
- Veritabanı kilitlenmelerini (lock) azaltmak için büyük tablo değişikliklerini düşük trafikli saatlere planlayın.
Belirli Bir Tenant’ı Taşımak: Ortak DB’den Ayrı Veritabanına
Büyüyen SaaS projelerinde sıklıkla şu senaryo yaşanır: “X müşterisi çok büyüdü, veritabanını diğerlerinden ayırmak istiyoruz.” Bunu baştan öngörmek için:
- Tüm ilişkilendirmelerin
tenant_idüzerinden yapılmasına dikkat edin. - Migration ve yedek script’lerinizi tek bir tenant’ı filtreleyerek export/import yapabilecek şekilde tasarlayın.
- DNS ve uygulama tarafında, belirli tenant’lar için farklı veritabanı bağlantılarını yönetebileceğiniz bir yapı kurun.
Böylece ortak veritabanında sorun yaşatmaya başlayan büyük bir müşteriyi ayrı bir DCHost veritabanı sunucusuna taşımak, günler süren bir kabus olmaktan çıkar; planlı bir bakım penceresinde yönetilebilir hale gelir.
DCHost Üzerinde Pratik Mimari Önerileri
Teoriyi somutlaştırmak için DCHost altyapısında sık gördüğümüz üç senaryoyu özetleyelim.
Senaryo 1: Yeni Başlayan Küçük SaaS / API (MVP)
- Veritabanı modeli: Tek veritabanı, ortak şema.
- Hosting: 1 adet DCHost VPS (uygulama + veritabanı aynı sunucuda).
- Önemli noktalar:
- Disk tarafında mümkünse NVMe tercih edin.
- Günlük otomatik veritabanı yedeği alın, yedekleri farklı bir lokasyonda tutun.
- Erken aşamadan itibaren tüm sorguları
tenant_idfiltresiyle yazın.
Senaryo 2: Büyüyen SaaS, Artan Trafik ve Müşteri Sayısı
- Veritabanı modeli: Çoğunluk için ortak şema, birkaç kurumsal müşteri için ayrı veritabanı.
- Hosting:
- 1–2 adet DCHost VPS (uygulama sunucuları, gerekirse load balancer arkasında),
- 1 adet DCHost VPS (sadece veritabanı, daha yüksek RAM ve disk IO kapasitesiyle).
- Önemli noktalar:
- ORM veya bağlantı katmanında tenant’a göre farklı veritabanı seçebilecek altyapı kurun.
- Okuma yükü artmaya başlarsa bir read replica eklemeyi planlayın.
- Monitoring (CPU, RAM, disk IO, slow query log) kurulumunu ihmal etmeyin.
Senaryo 3: Kurumsal Müşteriler ve Yüksek Erişilebilirlik
- Veritabanı modeli: Büyük müşteriler için ayrı veritabanı, gerekirse ayrı veritabanı sunucuları.
- Hosting:
- Birden fazla DCHost VPS veya dedicated sunucu (uygulama katmanı için),
- Primary + replica veritabanı sunucuları, gerekiyorsa coğrafi olarak farklı veri merkezlerinde,
- Kritik projeler için DCHost colocation hizmetiyle kendi fiziksel sunucularınızı barındırma.
- Önemli noktalar:
- Failover senaryolarını düzenli olarak test edin.
- Felaket kurtarma (DR) planınızda RTO/RPO hedeflerinizi netleştirin.
- Veri yerelleştirme ve uyumluluk gerekliliklerine göre veri merkezi lokasyonunu dikkatle seçin.
API Katmanı ve Rate Limiting’i Unutmamak
Multi‑tenant veritabanınız ne kadar iyi olursa olsun, API katmanında tek bir müşterinin tüm kaynakları tüketmesini önlemezseniz, diğer tenant’lar için de performans düşer. Bu yüzden:
- Her tenant için rate limiting (istek sayısı kısıtlama) uygulamak,
- Arka planda çalışacak ağır raporlamaları kuyruk sistemine atmak,
- API anahtarlarını (API key, token) sıkı bir şekilde yönetmek
kritik önem taşır. Bu konuda Nginx ve Redis tabanlı çözümlerle neler yapabileceğinizi görmek için API ve mikroservisler için rate limiting stratejilerini anlattığımız rehbere göz atabilirsiniz.
Özet ve Sonraki Adımlar
Küçük SaaS ve API projelerinde multi‑tenant veritabanı mimarisini doğru kurgulamak, ilk günden “enterprise” karmaşıklığına girmek anlamına gelmiyor. Aksine, basit ama doğru temellerle başlarsanız:
- Tek VPS üzerinde giderken bile onlarca müşteriye rahatça hizmet verebilir,
- Büyüdükçe veritabanını ayrı bir DCHost VPS’e taşıyıp, replica ekleyerek ölçekleyebilir,
- Çok büyüyen müşterileri ayrı veritabanlarına ya da dedicated sunuculara sorunsuz biçimde ayırabilirsiniz.
Bu yolculukta kritik olan:
- Başta doğru multi‑tenant modeli seçmek (genelde ortak şema ile başlamak),
- tenant_id odaklı tasarım ve sağlam index’ler kurmak,
- Yedekleme, replikasyon ve felaket kurtarma planlarını kağıt üzerinde değil, gerçek testlerle doğrulamaktır.
Eğer “Bizim SaaS şu an 20 müşteride, ama 200’e gittiğimizde ne olacak?” sorusunu kafanızdan atmak istiyorsanız, mevcut yapınızı birlikte değerlendirebiliriz. DCHost olarak veritabanı mimarisi, VPS/dedicated plan seçimi ve colocation senaryolarında hem teknik hem operasyonel tarafta yanınızdayız.
Çok kiracılı mimarinizi ve hosting altyapınızı birlikte planlamak için, DCHost destek ekibine projeyi kısaca özetleyen bir mesaj göndermeniz yeterli. Mevcut durumu, büyüme hedeflerinizi ve regulasyon gerekliliklerinizi bilmemiz, sizin için en dengeli multi‑tenant veritabanı ve hosting mimarisini tasarlamamız için fazlasıyla yeterli olacaktır.
