Una possibilità è che potrebbero esserci altri problemi che causano problemi di prestazioni:6 secondi sembrano eccessivi per le operazioni CRUD, anche su un database complesso. Tieni presente che (all'epoca) ArsDigita poteva gestire 30 hit al secondo su un Sun Ultra 2 (IIRC) a due vie con una configurazione del disco abbastanza modesta. Un moderno server di fascia medio-bassa con un layout del disco ragionevole e un'ottimizzazione adeguata dovrebbe essere in grado di far fronte a un carico di lavoro piuttosto consistente.
-
Ti manca un indice? - controlla i piani di query delle query lente per scansioni di tabelle dove non dovrebbero essere.
-
Qual è il layout del disco sul server? - hai bisogno di aggiornare il tuo hardware o risolvere alcuni problemi di configurazione del disco (ad es. non abbastanza dischi, registri sullo stesso volume dei dati).
-
Come suggerisce l'altro poster, potresti voler usare InnoDB sulle tabelle pesantemente scritte.
-
Controllare l'impostazione per l'utilizzo della memoria sul server di database. Potresti voler configurare più cache.
Modifica: I registri del database dovrebbero risiedere su dischi silenziosi propri. Usano un modello di accesso sequenziale con molte piccole scritture sequenziali. Laddove condividono i dischi con un carico di lavoro ad accesso casuale come i file di dati, l'accesso casuale al disco crea un grande collo di bottiglia delle prestazioni del sistema nei registri. Nota che questo è il traffico di scrittura che deve essere completato (cioè scritto su disco fisico), quindi la memorizzazione nella cache non aiuta in questo.