WordPress için Yüksek Erişilebilirlik Mimarisi: Kapsamlı Rehber
Günümüzde WordPress, dünyada en çok kullanılan CMS olup internetteki tüm web sitelerinin %40’ından fazlasını
güçlendiriyor. Ancak konu kritik görevli projeler —haber portalları, yüksek trafikli e-ticaret ya da kurumsal uygulamalar— olduğunda
yalın bir kurulum yeterli değildir. Yüksek erişilebilirlik (HA) ve
azami performans, sitenin daima çevrimiçi olmasını, hızlı yanıt vermesini ve talebe göre
dinamik biçimde büyüyebilmesini sağlamak için vazgeçilmez gereksinimlere dönüşür.
Yanlış zamanda çöken bir web sitesi; satış kaybı, marka itibarının zedelenmesi ve
kullanıcıların hayal kırıklığı anlamına gelebilir. Bu yüzden WordPress’i hata toleransı,
ölçeklenebilirlik ve uç performans için tasarlanmış bir ortamda uygulamak stratejik bir yatırımdır.
Bu yazıda, mümkün olan en düşük yanıt süresiyle büyük trafik hacimlerini karşılayacak şekilde optimize edilmiş,
yüksek erişilebilir WordPress mimarisini nasıl kuracağını öğreneceksin. Altyapı planlamasından
yük dengelemeye ve önbellek optimizasyonuna, oradan güvenlik ve izleme için en iyi uygulamalara kadar her şeyi inceleyeceğiz.
Hedef; yazının sonunda WordPress’i bir sonraki seviyeye taşıyacak net bir yol haritasına sahip olman:
dayanıklı, hızlı ve sınırsız büyümeye hazır bir ortam.
Donanım: Hızlı ve stabil bir WordPress’in temeli
WordPress’in çalışacağı donanımın (veya hosting türünün) seçimi, yüksek erişilebilirlik ve azami performans
için en belirleyici faktörlerden biridir. Günde birkaç ziyaret alan kişisel bir blog kurmakla, saatte binlerce
işlem yapan bir WooCommerce mağazası ya da dev trafik sıçramaları yaşayan bir haber portalı işletmek aynı şey değildir.
Bu bölümde şunları göreceğiz:
- WordPress’in ihtiyaç duyduğu resmi asgari gereksinimler.
- Ciddi bir üretim ortamı için donanım önerileri.
- Referans olarak kullanılabilecek fiziksel sunucu örnekleri.
- Proje türüne göre ne seçilmeli.
WordPress’in resmi temel gereksinimleri
WordPress resmi dokümantasyonuna göre:
- PHP: 8.3 veya
üstü - Veritabanı: MySQL 8.0
veya üstü ya da MariaDB 10.6 veya üstü - Web sunucusu: Apache veya
Nginx (ör. mod_rewrite gibi uyumlu modüllerle) - HTTPS desteği:
güvenlik ve SEO için zorunlu
Bu gereksinimler asgari düzeydedir. Ancak yüksek erişilebilirlik hedefleyen projelerde
daha güçlü özelliklere geçmek gerekir.
Üretim için donanım önerileri
| Bileşen | Kabul edilebilir minimum | Önerilen (üretim / yüksek trafik) |
|---|---|---|
| RAM | 512 MB | 2 GB ve üzeri (ağır eklentiler veya WooCommerce varsa 4–8 GB) |
| CPU / Çekirdek | 1 çekirdek ~1 GHz | Orta–yüksek trafik için 2–4 çekirdek ve üzeri |
| Depolama | Temel kurulum için 1 GB boş alan | SSD veya NVMe; ideali veritabanını hızlı diske ayırmak |
| PHP Belleği | 128 MB | 256 MB ve üzeri |
| PHP Workers | Web sunucusuna bağlı | Orta/yüksek eşzamanlılık için çoklu worker |
Dikkate alınacak diğer kritik faktörler:
- Önbellek kullanımı (object cache, page cache, CDN).
- Proje büyüdükçe ayrı veritabanı sunucusu.
- Yükün frontend, backend ve veritabanı arasında dağıtılması.
- Daha düşük gecikme için sunucunun coğrafi konumu.
- Kolay ölçeklenebilirlik (RAM/CPU artırılabilir olmalı).
Senaryoya göre ne seçmeli
| Senaryo | Önerilen asgari donanım | Notlar |
|---|---|---|
| Kişisel blog veya küçük site | 2 GB RAM, 2 çekirdek, 50 GB SSD | Bir MicroServer veya temel kule kasa yeterlidir. |
| Orta trafikli site | 4–8 GB RAM, 4 çekirdek, SSD/NVMe | Veritabanını ayırmak ya da ayrılmış sunucu kullanmak idealdir. |
| WooCommerce mağazası veya büyük portal | 8+ GB RAM, 6–12 çekirdek, hızlı NVMe | Yatay ölçeklemeye hazır rack sunucular tercih edilmeli. |
WordPress için yüksek erişilebilirlik mimarisi
Tek sunucuda monolitik kurulan klasik bir WordPress küçük siteler için işe yarar; ancak
yüksek erişilebilirlik (HA) hedeflendiğinde yeterli değildir. Kritik ortamlarda
dayanıklı, ölçeklenebilir ve dağıtık bir altyapı gerekir; bu altyapı donanım arızalarını,
trafik sıçramalarını ve yoğun iş yüklerini (ör. WooCommerce, üyelik siteleri veya medya portalları) emebilmelidir.
Anahtar nokta sorumlulukları ayırmak ve birlikte çalışan katmanlar kullanmaktır. Başlıca bileşenler:
Yük dengeleyiciler (Load Balancers)
- Tüm web trafiğinin giriş kapısıdır.
- İstekleri birden çok web sunucusu arasında dağıtarak aşırı yüklenmeyi önler.
- Bir düğümün arızalandığını algılayıp trafiği ona göndermeyi durdurabilir (sağlık kontrolleri).
- Örnekler: HAProxy, Nginx, AWS ELB/ALB, Google Cloud Load Balancing.
Ölçeklenebilir web sunucuları
- WordPress’in PHP kodunu sunan makineler.
- Genellikle Nginx + PHP-FPM veya Apache + PHP-FPM çalışır.
- Yatay olarak ölçeklenebilir (dengeleyicinin arkasına yeni sunucular eklenir).
- Tercihen bulutta otomatik ölçekleme veya konteynerlerle (Kubernetes, Docker
Swarm) otomasyon yapılır.
Önemli: Tüm düğümler aynı WordPress dosyalarını (eklentiler, temalar, yüklemeler) paylaşmalıdır. Bu, paylaşımlı depolama (NFS, GlusterFS, Ceph veya S3 uyumlu) ile sağlanır.
Bağımsız veritabanı
- WordPress, MySQL/MariaDB’ye güçlü biçimde bağımlıdır.
- HA’de veritabanı, frontend’den bağımsız bir kümede konumlandırılmalıdır.
- Seçenekler:
- Master–Slave veya Primary–Replica
çoğaltma (okuma yükünü dağıtma). - Galera kümeleri
(çoklu master yüksek erişilebilirlik). - Amazon Aurora, Google Cloud SQL veya Azure Database for
MySQL gibi yönetilen hizmetler.
- Master–Slave veya Primary–Replica
Veritabanı en sık karşılaşılan dar boğazdır; diğer katmanlardan ayırmak stabilite ve performansı artırır.
Önbellekler ve ara katman optimizasyonu
- Veritabanı sorgularını azaltmak için Redis veya Memcached ile
object cache. - Page cache (Varnish,
Nginx FastCGI cache veya WP Rocket gibi eklentiler) ile mümkün olduğunda statik sayfa sunumu. - CDN (Cloudflare, Akamai, BunnyCDN vb.) ile statik içerik (görseller, CSS, JS) dağıtımı.
Önbelleğin karşıladığı trafik arttıkça PHP ve MySQL üzerindeki yük azalır.
Paylaşımlı medya depolaması
- Kullanıcıların yüklediği dosyalar (görseller, PDF’ler vb.) tüm sunucularda erişilebilir olmalıdır.
- Seçenekler:
- On-premise ortamlar için NFS/GlusterFS.
- Bulut ortamları için S3 + WP Offload
Media eklentisi.
Bu sayede bir yüklemenin yalnızca kümedeki tek bir düğümde bulunması sorunu önlenir.
Önerilen eklentiler (WordPress)
| Kategori | Eklenti | Bağlantı / Daha fazla bilgi |
|---|---|---|
| Güvenlik | Wordfence Security | https://www.wordfence.com/ |
| Güvenlik | All In One WP Security & Firewall | https://wordpress.org/plugins/all-in-one-wp-security-and-firewall/ |
| Önbellek / Performans / Optimizasyon | WP Rocket | https://wp-rocket.me/ (Jetpack) |
| Önbellek / Performans / Optimizasyon | LiteSpeed Cache | https://wordpress.org/plugins/litespeed-cache/ |
| Önbellek / Performans / Optimizasyon | W3 Total Cache | https://wordpress.org/plugins/w3-total-cache/ |
| Önbellek / Performans / Optimizasyon | WP-Optimize | https://wordpress.org/plugins/wp-optimize/ |
| Önbellek / Performans / Optimizasyon | Jetpack Boost | https://jetpack.com/boost/ |
0 Comment