Sarebbe utile vedere il tuo load avarange - processi in sospeso -. Sicuramente gran parte della memoria viene sfruttata da query che restano aperte per troppo tempo o non vengono mai chiuse.
Se fai una media di visitatori superiori ai 20000 al giorno penso che almeno per la metà di visite un dedicato sia più che necessario.
Valuta i costi - ed i ricavi - ed opta per un server tutto tuo. Se non te ne intendi cerca un servizio managed che ti aiuti nella configurazione e che si occupi della sicurezza. Rischi di vederti il sito sempre sospeso con quei valori, e vedi che l'ottimizzazione delle tabelle serve ma non risolve granchè con un consumo di risorse come il tuo.
Puoi fare un tentativo installando
http://extensions.joomla.org/extensions/site-management/cache/3180 - non l'ho mai usato ma ne parlano bene (
non puoi usarlo se utilizzi il legacy) - e abilitando la cache dalla configurazione globlale ( 3 minuti sono pochini... meglio 15 almeno, ma dipende ogni tot aggiorni il sito) diminundo così le richieste al mysql.
Se il tuo DB supera i 100 MB stai tranquillo che una buona percentuale di risorse utilizzate provengono proprio dalle chiamate continue al mysql.