Bir üniversite hiçbir zaman tek bir web sitesi değildir. Ana kurumsal sitenin yanında her fakülte, bölüm, araştırma merkezi ve kütüphane için ayrı siteler; çoğu zaman da onlarca proje, laboratuvar ve etkinlik sitesi vardır. Büyük bir üniversite rahatlıkla 50 ila birkaç yüz ayrı site işletebilir. Zorluk, bunlardan herhangi birini kurmak değildir; hepsini birlikte yönetmektir. Yani her biri için ayrı bir ekip ve ayrı bir teknoloji yığını kurmadan bu siteleri güvenli, marka uyumlu ve güncel tutmaktır. Drupal multisite'ın çözmek için tasarlandığı sorun tam olarak budur ve dünyanın önde gelen üniversitelerinin bu kadar çoğunun Drupal üzerinde çalışmasının önemli bir nedenidir.
Bu yazıda Drupal multisite'ın nasıl çalıştığını, üniversite senaryosuna neden bu kadar iyi uyduğunu, alternatifleriyle nasıl kıyaslandığını ve en az bunlar kadar önemli olan, ne zaman yanlış tercih olduğunu açıklıyoruz. Amaç, bir kurumun multisite'ın kendi web ekosistemi için doğru mimari olup olmadığına karar vermesine yardımcı olacak net ve dürüst bir tablo sunmaktır.
Her Üniversitenin Karşılaştığı Çok-Site Sorunu
Üniversiteler doğaları gereği merkezî değildir. Her fakülte kendi sitesi üzerinde denetim ister, her bölümün kendi içeriği ve editörleri vardır ve merkezî BT tüm bu ekosistemi güvenli, erişilebilir ve tutarlı tutmaktan sorumludur. Yönetilmediğinde bu gerilim tanıdık bir karmaşa üretir: Bölümler işlerine gelen hangi platformsa onun üzerinde kendi izinsiz sitelerini açar, marka tutarlılığı çöker, güvenlik yamaları eşit uygulanmaz ya da hiç uygulanmaz ve neyin çalıştığına dair kimsenin tam bir resmi olmaz.
Başka bir deyişle platform kararı, aslında kılık değiştirmiş bir yönetişim kararıdır. Bir üniversitenin yanıtlaması gereken soru yalnızca "hangi CMS'i kullanmalıyız" değil, "onlarca ekibin kendi sitelerini yönetmesine izin verirken merkezî BT'nin tüm ekosistemi nasıl güvenli ve tutarlı tutacağı"dır. Drupal multisite, tam da bu soruya verilen en güçlü yanıtlardan biridir.
Drupal Multisite Gerçekte Nedir?
Drupal, multisite'ı çekirdekte doğal olarak destekleyen az sayıdaki içerik yönetim sisteminden biridir. Bir Drupal multisite, tek bir paylaşımlı kod tabanından birden fazla web sitesi çalıştıran tek bir Drupal kurulumudur. Önemli teknik ayrıntı, neyin paylaşıldığı ve neyin paylaşılmadığıdır: Siteler kodu (Drupal çekirdeği, modüller ve temalar) paylaşır, ancak her sitenin kendi ayrı veritabanı vardır. Bu, hepsi aynı temel kurulum üzerinde çalışsa bile içeriğin, yapılandırmanın, kullanıcıların ve yüklenen dosyaların her site için tamamen ayrı olduğu anlamına gelir.
Teknik olarak her site, kurulumun altında kendi alt dizininde ve kendi veritabanını işaret eden kendi ayar dosyasıyla yer alır. Bir istek geldiğinde Drupal, alan adına ya da URL'ye bakar ve doğru sitenin veritabanını ve yapılandırmasını yükler. Pratik sonuç, tamamen bağımsız web siteleri gibi görünen ve davranan bir site setidir; her biri kendi markası, içeriği ve editör ekibiyle, ancak altta tek bir kod tabanını ve tek bir güncelleme sürecini paylaşarak. Kodu bir kez güncellersiniz ve her site yeni sürümle çalışır.
Üniversiteler Neden Multisite'a Güvenir?
Multisite modeli, bir üniversitenin gerçekte nasıl işlediğine neredeyse kusursuz oturur. Stanford, Yale, Harvard ve Duke kendi büyük Drupal site platformlarını bu ilke üzerine kurar; University College London gibi kurumlar ise tek bir yönetişim katmanından 500 ya da daha fazla mikro siteyi yönetir. Bunu mümkün kılan avantajlar somuttur:
- Bir kez güncelle, her yere dağıt: Bir güvenlik yaması ya da bir Drupal sürüm yükseltmesi, paylaşılan kod tabanına bir kez uygulanır ve her sitede geçerli olur. 200 siteyi tek tek yamamak yerine merkezî BT tek bir güncelleme çalıştırır; multisite'ın sunduğu en büyük operasyonel tasarruf budur.
- Yerel özerklikle merkezî yönetişim: Merkezî BT mimariyi, güvenliği ve tasarım sistemini yönetir; her fakülte ve bölüm ise kendi içeriği üzerinde tam editöryal denetimi elinde tutar. Bölümler bağımsızlığını kazanır, kurum tutarlılığını korur.
- Ölçekte marka tutarlılığı: Paylaşılan bir tasarım sistemi ve paylaşılan bileşenler, her sitenin kendi yönüne savrulması yerine tutarlı marka ve erişilebilirlik standartları taşıması anlamına gelir.
- Paylaşılan geliştirme: Özel işlevsellik bir kez geliştirilir ve her siteye sunulur. Bir fakülte için geliştirilen bir modül ya da özellik, yeniden yazılmadan diğerleri için açılabilir.
- Yeni sitelerin verimli devreye alınması: Yeni bir bölüm ya da program bir siteye ihtiyaç duyduğunda, sıfırdan başlamak yerine aynı güvenli, erişilebilir ve marka uyumlu temelden yola çıkarak paylaşılan platformdan hızla hazırlanabilir.
Büyük bir site ekosistemi işleten bir kurum için bu verimlilikler katlanarak artar. Drupal'ın yükseköğretimdeki baskınlığının ardındaki örüntü tam olarak budur ve platformun sektördeki daha geniş güçlü yanlarına doğrudan bağlanır; bunları eğitimde Drupal genel bakışımızda ele alıyoruz.
Multisite Tek Seçenek Değil
Klasik multisite, Drupal'dan çok sayıda site çalıştırmanın bir yoludur ama tek yolu değildir. Doğru mimariyi en baştan seçmek, ileride ciddi zaman ve maliyet tasarrufu sağlar; bu yüzden başlıca alternatifleri anlamakta fayda var.
| Yaklaşım | Nasıl çalışır | Kime uygun |
|---|---|---|
| Klasik multisite | Tek kod tabanı, site başına ayrı veritabanı. İçerik tamamen izole. | Güçlü içerik ayrımı gereken, yapısal olarak benzer çok sayıda site. |
| Domain Access | Tek kod tabanı ve tek paylaşımlı veritabanı; bir modül hangi içeriğin hangi alana ait olduğunu denetler. | Çok fazla içerik ve editör paylaşan, merkezî yönetilen siteler. |
| Ayrı kurulumlar | Her site kendi bağımsız Drupal kurulumudur; çoğu zaman paylaşılan bir Composer iş akışıyla yönetilir. | Belirgin biçimde farklılaşan ya da tam izolasyon ve bağımsız ölçekleme gereken siteler. |
| Dağıtım / upstream | Standart bir Drupal kurulumu paketlenir ve her yeni bağımsız site için başlangıç noktası olarak kullanılır. | Ortak bir temelden çok sayıda siteyi, bağımsız tutarak yaymak. |
Temel ayrım, içerik izolasyonu ile içerik paylaşımı arasındadır. Multisite her siteye kendi veritabanını ve en güçlü ayrımı verir. Domain Access tek veritabanı paylaşır; bu, içerik ve editör paylaşmayı kolaylaştırır ama siteleri birbirine sıkıca bağlar. Ayrı kurulumlar, her birini tek tek yönetmek pahasına en yüksek izolasyonu ve bağımsızlığı sunar. Doğru yanıt, sitelerinizin paylaşması gereken bir temanın varyasyonları mı, yoksa paylaşmaması gereken gerçekten bağımsız ekosistemler mi olduğuna bağlıdır.
Dürüst Dengeler: Multisite Ne Zaman Yanlış Tercihtir?
Multisite güçlüdür, ama risksiz değildir; sorumlu bir değerlendirme, dezavantajları en az avantajlar kadar ciddiye almalıdır. Paylaşılan bir kod tabanının verimliliği, aynı zamanda onun merkezî zayıflığıdır: Tek bir hata noktası yaratır.
- Ortak kader: Tüm siteler tek bir kod tabanında çalıştığı için, o kod tabanındaki bir sorun aynı anda her siteyi etkiler. Bir sitedeki trafik sıçraması hepsinin performansını bozabilir ve bir güvenlik ihlalini sınırlamak daha zordur; paylaşılan kod üzerinden bir site ele geçirilirse diğerleri de açık hâle gelebilir.
- Sınırlı izolasyon: Kod düzeyinde siteler arasında güçlü bir ayrım yoktur ki bu, katı güvenlik ya da uyumluluk gereksinimleri olan kurumlar için gerçek bir husustur. Sitelerin tam izole olması gerektiği yerde ayrı kurulumlar daha güvenli modeldir.
- Bakım bağımlılığı: Belirli yükseltmeler gibi bazı işlemler, tüm sitelerin birlikte bakım moduna girmesini gerektirebilir ve bir siteyi sonradan multisite'tan ayırmak basit bir iş değildir.
- Zamanla farklılaşma: Siteler kod ya da yapılandırma ihtiyaçlarında birbirinden uzaklaşırsa, paylaşılan yükseltme yolu çatallanabilir ve multisite'ı haklı çıkaran sadelik aşınmaya başlar.
Modern Drupal iş akışları, alternatifleri eskiye kıyasla çok daha cazip hâle getirdi. Ayrı kurulumları yöneten Composer tabanlı bir iş akışı ya da paylaşılan bir upstream'den izole siteler hazırlayan bir platform, ortak kader riskini taşımadan multisite'ın tutarlılığının çoğunu sağlayabilir. Multisite, benzer ve iyi yönetilen büyük bir site ekosistemi için hâlâ mükemmel bir seçimdir; ancak gerçek izolasyon, bağımsız ölçekleme ya da belirgin farklılaşma gerektiren siteler için çoğu zaman yanlış araçtır. Dürüst kural şudur: Multisite'ı, siteleriniz gerçekten benzer ve merkezî yönetildiği için seçin; sırf site sayısını azaltıyor göründüğü için değil.
Yönetişim: Bunun Asıl Önemli Olma Nedeni
Teknik mimarinin altında, bir üniversitenin multisite ile gerçekte satın aldığı şey bir yönetişim modelidir. Üniversite web yönetimindeki en zor sorun site kurmak değildir; onlarca özerk ekibi, ne bağımsızlıklarını boğarak ne de merkezî denetimi kaybederek koordine etmektir.
İyi işleyen bir multisite platformu bu gerilimi açıkça çözer. Merkezî BT paylaşılan katmana sahiptir: Kod tabanı, güvenlik güncellemeleri, tasarım sistemi, erişilebilirlik standartları ve genel mimari. Fakülteler ve bölümler kendi içeriklerine sahiptir: Kendi editörleri, kendi yayın takvimleri, paylaşılan çerçeve içinde kendi siteye özgü yapıları. Roller ve izinler merkezî olarak tanımlandığı için her ekip tam olarak ihtiyaç duyduğu erişimi alır, fazlasını değil. Sonuç, yardımcı olduğu yerde (içerikte) özerklik, önemli olduğu yerde (güvenlik, marka ve uyumlulukta) tutarlılıktır. Asıl ürün bu dengedir ve platform seçiminin nihayetinde salt teknik değil bir yönetişim kararı olmasının nedeni de budur.
Sık Yapılan Multisite Hataları ve Bunlardan Kaçınma Yolları
- Site sayısını azaltmak için multisite seçmek: Multisite'ı kullanma nedeni gerçek benzerlik ve paylaşılan yönetişimdir, bir sunucudaki daha küçük bir sayı değil. Sitelerin gerçekte nasıl ilişkilendiğine uyan mimariyi seçin, en derli toplu görüneni değil.
- Tek hata noktasını göz ardı etmek: Paylaşılan kod tabanı, paylaşılan risk demektir. Güçlü güvenlik uygulamaları, performans payı ve bir sitenin kötü bir gün geçirmesi durumunda ne olacağına dair net bir anlayışla buna hazırlanın.
- Çok farklı siteleri bir araya zorlamak: Kod ya da yapılandırma ihtiyaçları belirgin biçimde farklılaşan siteler paylaşılan modeli zorlar. Farklılaşma gerçekse, ayrı kurulumlar zorlama bir multisite'tan daha iyi hizmet eder.
- Ayrılma maliyetini küçümsemek: Bir siteyi sonradan multisite'tan ayırmak zordur. Mimariyi, sitelerin sonsuza dek birlikte kalacağını varsaymak yerine gelecekteki bir ayrılmayı göz önünde bulundurarak planlayın.
- Yönetişimi ihmal etmek: Teknoloji tek başına düzen yaratmaz. Paylaşılan katmana kimin, her sitenin içeriğine kimin sahip olduğuna dair net bir model olmadan, iyi kurulmuş bir multisite bile karmaşaya sürüklenir.
- Sitelerin yönetilmeden farklılaşmasına izin vermek: Her sitenin kendi özel kodunu biriktirmesine izin vermek, paylaşılan kod tabanı avantajını aşındırır. Özelleştirmeleri disiplinli tutun ve mümkün olduğunda paylaşın.
İyi yönetildiğinde Drupal multisite, bir üniversitenin büyük ve tutarlı bir web ekosistemini tek bir platformdan çalıştırmasını sağlar: Merkezî BT her şeyi güvenli ve marka uyumlu tutarken, her fakülte ve bölüm kendi sitesinin denetimini elinde tutar. Bu, Drupal'ın yükseköğretimde varsayılan tercih hâline gelmesinin en net nedenlerinden biridir ve platformun çok dilli içerik, erişilebilirlik ve akademik sistemlerle entegrasyondaki güçlü yanlarıyla doğal biçimde birleşir. Nitekim Drupart bünyesinde Drupal4edu ekibinin Sabancı Üniversitesi, ODTÜ, Yıldız Teknik Üniversitesi, Yeditepe, Işık ve İstinye Üniversitesi gibi kurumlar için geliştirdiği çok katmanlı Drupal platformları, tam da bu yönetişim modelini temel alır.
Drupal Multisite Hakkında Sıkça Sorulan Sorular
Multisite siteleri birbiriyle içerik paylaşır mı?
Klasik bir multisite'ta hayır. Her sitenin kendi ayrı veritabanı vardır; dolayısıyla içerik, kullanıcılar ve yapılandırma izoledir. Siteler yalnızca alttaki kodu paylaşır. Siteler arası içerik paylaşımı bir gereksinimse, bu farklı bir mimariyi gerektirir; örneğin tek bir paylaşımlı veritabanı kullanan ve hangi içeriğin hangi sitede görüneceğini denetlemenizi sağlayan Domain Access. İkisi arasındaki tercih, sitelerinizin izole mi olması yoksa paylaşması mı gerektiğine bağlıdır.
Bir Drupal multisite kaç site çalıştırabilir?
Sabit bir sınır yoktur ve büyük kurumlar hatırı sayılır sayılarda site işletir; University College London gibi üniversiteler 500 ya da daha fazla site yönetir, bazı kurulumlar yüzlerce siteye ve ötesine ulaşır. Pratik tavan, Drupal'ın kendisinden çok altyapı, yönetişim disiplini ve sitelerin ne kadar benzer olduğu tarafından belirlenir. Bir kod tabanında ne kadar çok site çalıştırırsanız, güçlü operasyonel uygulamalar ve performans planlaması o kadar önemli hâle gelir; çünkü hepsi o kod tabanının kaderini paylaşır.
Drupal multisite kaldırılıyor mu?
Hayır. Multisite değerli bir çekirdek özelliğidir ve kaldırılmıyor. Toplulukta, Composer gibi modern araçlarla nasıl daha iyi çalışacağına dair tartışmalar oldu ve bu iyileştirmeler ilerledi, ancak özelliğin kendisi desteklenmeye devam ediyor. Bununla birlikte ekosistem artık güçlü alternatifler sunuyor; Composer ile yönetilen ayrı kurulumlar ve platform tabanlı upstream'ler bunların arasında. Bu yüzden modern soru "multisite mevcut mu"dan çok "multisite bu belirli ekosistem için doğru seçim mi"dir.
Multisite mi ayrı kurulumlar mı: Bir üniversite hangisini seçmeli?
Bu, sitelerin ne kadar benzer ve ne kadar izole olması gerektiğine bağlıdır. Multisite; bir tasarım sistemini paylaşan, birlikte güncellenmesi gereken ve merkezî yönetilen, yapısal olarak benzer büyük bir site ekosistemine uyar. Bu, klasik üniversite bölüm-siteleri senaryosudur. Ayrı kurulumlar ise belirgin biçimde farklılaşan, güvenlik ya da uyumluluk için tam izolasyon gereken ya da bağımsız ölçeklenmesi gereken sitelere uyar. Pek çok üniversite, bölüm sitelerinin çoğu için multisite'ta, gerçekten farklı gereksinimleri olan her şey için ayrı kurulumlarda karar kılar. Karar, yalnızca daha az hareketli parça tercihini değil, siteler arasındaki gerçek ilişkiyi izlemelidir.