Dipende.
Dipende dal client: alcuni client consentono l'accesso simultaneo; alcuni serializzeranno l'accesso, perdendo così il guadagno previsto. Non hai nemmeno specificato PHP vs Java vs ... o Apache vs ... o Windows vs ... Molte combinazioni semplicemente non forniscono alcun parallelismo.
Se tabelle diverse, esiste solo una contesa generale per I/O, CPU, Mutex sul buffer_pool, ecc. È possibile un ragionevole parallelismo.
Se stessa tabella, dipende dagli indici e dai modelli di accesso.In alcuni casi i thread si bloccano a vicenda. In alcuni casi anche "deadlock" e rollback di una delle transazioni. I deadlock non solo rallentano, ma ti fanno riprovare gli inserti.
Se si cerca l'ingestione ad alta velocità di molte righe, vedere my blog. Descrive le tecniche e indica sever delle ramificazioni, come la replica, la scelta del motore, il multi-threading.
Più thread che si inseriscono nelle stesse tabelle: dipende molto dai valori forniti per le chiavi PRIMARY
o UNIQUE
. Dipende se altre azioni sono prese nella stessa transazione. Dipende da quanto I/O è coinvolto. Dipende dal fatto che tu stia eseguendo inserti a riga singola o batch. Dipende da ... (Mi spiace essere vago, ma la tua domanda non è molto specifica.)
Se vuoi presentare le specifiche su due o tre disegni, possiamo discutere le specifiche.
fonte
2015-08-31 15:15:51
Questa domanda è troppo ampia. Puoi pubblicare del codice e chiedere punti specifici nel codice? – danihp