Vorrei almeno escludere tutto il contenuto statico. Imposta un altro vhost da qualche altra parte e carica tutta la grafica, CSS e JavaScript su di esso. Puoi acquistare alcuni cicli extra, scaricando la pubblicazione di quel tipo di contenuto. Se sei davvero preoccupato, puoi registrarti e utilizzare un servizio di distribuzione di contenuti. Ora ce ne sono molti simili ad Akamai e abbastanza economici.
Un'altra idea potrebbe essere quella di utilizzare Apache mod_proxy per mantenere l'output della pagina generata per un determinato periodo di tempo. APC sarebbe anche abbastanza utilizzabile ... Potresti utilizzare l'acquisizione del buffer di output + l'ora dell'ultima modifica dei dati correlati sulla pagina e utilizzare la versione memorizzata nella cache APC. Se la pagina non è più valida, la rigeneri e la memorizzi nuovamente in APC.
Buona fortuna. Sarà un'esperienza di apprendimento!
Prima misura e poi ottimizza. Hai fatto dei test di carico? Dove sono i colli di bottiglia?
Una volta che conosci i tuoi colli di bottiglia, puoi decidere in modo intelligente se hai bisogno di ulteriori caselle di database o caselle web. In questo momento starai solo indovinando.
Inoltre, come si confrontano i risultati dei test di carico con il traffico previsto? Riesci a gestire il doppio del traffico previsto? Cinque volte? Con quale facilità/velocità puoi acquisire e rilasciare hardware extra? Sono sicuro che il requisito aziendale è quello di non fallire durante il lancio, quindi assicurati di averne un sacco di capacità disponibile. Puoi sempre rilasciarlo in seguito quando il carico si è stabilizzato e sai di cosa hai bisogno.
Concediti un periodo beta in cui consenti l'accesso a tutti gli utenti che puoi gestire, misura le prestazioni del tuo sito e risolvi i bug prima della pubblicazione.
Puoi controllare esplicitamente il numero di utenti in una beta privata o in una beta semi-pubblica in stile Google in cui ogni utente ha un numero di referral che può offrire ai propri amici.
Per preparare o gestire un picco (o picco) di prestazioni, per prima cosa determinerei se sei pronto attraverso alcuni semplici test delle prestazioni con qualcosa come jmeter.
È facile da configurare e iniziare e ti fornirà le prime metriche se gestirai un carico di picco previsto.
Tuttavia, dati i tuoi limiti di tempo, altri passi da compiere sarebbero preparare versioni statiche di contenuti che attireranno la massima attenzione (come i comunicati stampa, se il tuo giorno di lancio). Assicurati inoltre di utilizzare al meglio la memorizzazione nella cache lato client (una richiesta in meno al tuo server può fare la differenza). Il Web è già progettato per una scalabilità estremamente elevata e un uso efficace della cache dei contenuti è il tuo migliore amico in queste situazioni.
C'è un eccellente podcast sull'alta scalabilità sulla radio di ingegneria del software sul design del nuovo sito web di Guardian quando le cose si saranno calmate.
Buona fortuna per il lancio.