Sì, questo è possibile e numerose agenzie di stampa e di notizie lavorano con approcci simili in WordPress.
Qual è il tuo processo editoriale?
Il passo più importante è capire il tuo processo editoriale e quanto controllo hai bisogno di avere dei contenuti prima che diventino attivi.
- ad esempio, considera questi 3 punti:
1. Hai bisogno di approvazioni di terze parti per le immagini?
2. Tu o il tuo cliente dovete firmare copia / immagini / video / layout prima che il contenuto sia pubblicato?
3. I redattori si mettono al lavoro su settimane o problemi diversi e stanno pianificando contenuti da pubblicare con settimane di anticipo ...
Se hai risposto Sì a uno di questi, un singolo DB condiviso tra il tuo server Pre-Live / Staging e il tuo server Live non è "possibile". Perchè lo chiedi? perché un nuovo post deve essere pubblicato prima di poter essere visto da utenti non utenti o di terze parti a cui non si desidera fornire anche accessi. (A proposito ... tutto è possibile con tempo, denaro e competenze per personalizzare ruoli utente e livelli di accesso).
Quindi torniamo alla soluzione scalabile di WordPress
DOMINIO A (a cosa vanno i tuoi clienti e visitatori) dovrà essere indirizzato a un bilanciamento del carico HTTP.
Load Balancer indirizzerà il traffico dei clienti verso uno dei numerosi server Web. Questi server slave sono mantenuti in LSYNC con un server MASTER.
Idealmente, ci dovrebbero essere 2 server DB separati (per il bilanciamento del carico delle richieste di lettura / scrittura e ridimensionamento). Puoi aspettarti molto traffico READ dai visitatori, ma vuoi assicurarti che il traffico WRITE da nuovi post, ecc. Non interferisca con le tue richieste READ.
DOMAIN A può anche essere indirizzato a un bilanciamento del carico HTTPS configurato per
1. consentire solo il traffico dall'indirizzo IP di Office e 2. FORCE la connessione SSL per Admin / Login.
Questa è una semplice modifica al wp-config.php
file.
Ecco un diagramma di ciò che abbiamo costruito (con un po 'di supporto da Rackspace)
HyperDB
Alla fine abbiamo ottenuto la configurazione di HyperDB per gestire i server e le richieste di più DB. Questo è stato anche facile in quanto è principalmente un plug-in con un lungo script di configurazione.
W3TC W3 Total Cache
Abbiamo anche installato HyperDB e W3TC .. anche questo ha richiesto molto carico dei server DB
Il motivo principale per cui abbiamo usato W3TC è stato scaricare tutto il contenuto statico su Rackspace. Anche la configurazione della rete di distribuzione dei contenuti in W3TC è molto semplice :)