Sandbox Mimarisi: Ortamlar Özellik Değil, Sınırdır
Tek frontend, çok ortam: proxy tabanlı yönlendirme, kimlik kopyalama ve sert reload kurallarıyla gerçek bir sandbox mimarisi nasıl kurulur.
Bu yazı, üretim ve sandbox gibi birden fazla ortamı tek bir frontend üzerinden sunmaya çalışırken karşılaşılan mimari tuzakları ele alıyor. Ana fikir şu: ortamlar bir özellik değil, birer sınırdır ve bu sınırlar ancak yapısal olarak zorlanırsa işe yarar. Önerilen yaklaşımda frontend hangi ortamda olduğunu bilmez; tüm yönlendirme kararları backend'deki bir proxy katmanına bırakılır. Ortam bilgisini gösteren arayüz göstergeleri de istemci tarafındaki durumdan değil, backend'in fiilen ne yaptığından (header, response flag gibi) beslenmelidir.
Kimlik yönetimi en kırılgan nokta olarak öne çıkıyor. Ortamlar arasında paylaşılan bir kimlik veritabanı kurmak teoride temiz ama pratikte riskli; yazar bunun yerine üretimin kimliğe sahip olduğu, diğer ortamların ise yalnızca oturum doğrulamak için gereken minimum veriyi (kullanıcı id, kimlik bilgisi) tek yönlü ve artımlı şekilde kopyaladığı bir model öneriyor. Ödeme, alan verisi veya geçmiş asla kopyalanmamalı; senkronizasyon nerede çalışabileceği konfigürasyonla açıkça sınırlandırılmalı.
Ortam değiştirmenin sert bir sayfa yenilemesiyle ve güvenli bir varsayılan sayfaya inişle yapılması, kimlik doğrulama ile hassas rotaların üretimde tutulması, hata ayıklama için geçici loglama ve deploy script'lerinin 'restart'ı gerçekten garanti etmesi gibi sıradan ama kritik pratikler de vurgulanıyor. Mesaj net: iyi bir çok-ortamlı mimaride sürprizin bedelini üretim değil, sandbox öder.