Çoklu Çalışma Alanı Mimarisi: Nasıl Ölçeklendiriyoruz
Çalışma alanı sınırı tasarımına, ölçek varsayımlarına ve yüksek hacimli yaygınlaştırma öncesi gereken kontrollere pratik bakış.
Birden fazla işletmeye hizmet veren bir SaaS platformu oluşturmak dikkatli mimari kararlar gerektirir. LuniOps olarak, Firebase üzerine kurulu, operasyonel maliyetleri yönetilebilir tutarken güçlü çalışma alanı izolasyonu uygulamak üzere tasarlanan çoklu çalışma alanı yaklaşımını tercih ettik.
Her çalışma alanı (şirket) Firestore içinde kendi veri alanını kullanır. Güvenlik kuralları ve kaynak kontratları kullanıcıları kendi şirket verileriyle sınırlamak için yazılır; bu sınırın yayına çıkmadan önce emulator, kod incelemesi ve üretim kuralı kanıtı gerekir. Pratik hedef açıktır: A Şirketi'nden bir kullanıcı desteklenen uygulama yollarından B Şirketi'nin verisini görmemeli veya değiştirmemelidir.
Rol tabanlı erişim kontrol sistemimiz hem şirket hem de modül düzeyinde çalışır. Her şirket ayrıntılı izinlerle özel roller tanımlayabilir — örneğin bir depo yöneticisi envantere tam erişime sahipken siparişlere salt okunur erişime sahip olabilir.
Ölçek için Firebase yönetilen altyapı sağlar, ancak yüksek hacimli çalışma alanları yine de indeks incelemesi, okuma bütçesi kontrolü, yük bilincine sahip iş akışları ve izleme gerektirir. Pilot, dış performans veya kapasite iddiası kullanılmadan önce beklenen sipariş hacmini, dışa aktarım boyutunu ve rol karmasını doğrulamalıdır.
Şirket bazlı dışa aktarım, yedekleme ve taşıma yolları operasyon riskini azaltabilir; fakat tek başına düzenleyici hazırlığı kanıtlamaz. Veri yerleşimi, saklama, geri yükleme denemeleri ve müşteriye özel sözleşme gereksinimleri hâlâ sağlayıcı yapılandırması, hukuk incelemesi ve üretim kanıtı ister.