3 Stimmen

Gibt es eine effizientere Methode als Transaktionen?

insert into table1 ...;
update table2 set count=count+1;

Die obigen Ausführungen fügen etwas in table1 und aktualisiert im Erfolgsfall die count Bereich der table2 .

Natürlich kann so etwas durch Transaktionen gehandhabt werden, aber Transaktionen müssen die Tabelle sperren, was in einem System mit hoher Parallelität nicht effizient ist. Und es kann sogar noch schlimmer werden, wenn Sie mehrere Tabellen in dieser Transaktion aktualisieren müssen.

Was ist Ihre Lösung?

Ich verwende PHP, und ich implementiere Transaktionen auf diese Weise:

mysql_query('begin');

mysql_query($statement1);

mysql_query($statement2);
...
mysql_query('commit');

Es sieht also so aus, dass alle Tabellen, die in diesen $statement gesperrt sein wird?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X