Leider gibt es ja in MySQl das Problem mit Race Conditions.
Ich habe nun eine mögl. Lösung so im Kopf.
Was denkt ihr? Würde die gehen? Kennt ihr eine bessere?
Mein Gedankengang:
Man erstellt zwei Textdateien.
Eine nennt man z.B. "lprozess.txt" und die andere "aprozess.txt"
Nun gibt man jeder MySQL Abfrage eine "ProzessID" (die letzte wird dann aus "lprozess.txt" ausgelesen und die Zahl in "lprozess.txt" wird um eins erhöht).
Dann macht man eine Schleife (mit sleep() z.B. drin) die solange läuft, bis die Zahl in "aprozess.txt" die gleiche ist wie die "ProzessID" der Abfrage.
Wenn es die gleiche ist wird die MySQL-Abfrage ausgeführt und die Zahl in "aprozess.txt" wird um eines erhöht.
Dieses passiert dann halt für jede MySQL-Abfrage.
Meine Befürchtung:
Das ganze Script wird dadurch mega langsam, da für jede MySQL-Abfrage Xmal die "aprozess.txt" ausgelesen werden muss.
Und die Serverauslastung würde dadurch auch steigen.
Ich habe nun eine mögl. Lösung so im Kopf.
Was denkt ihr? Würde die gehen? Kennt ihr eine bessere?
Mein Gedankengang:
Man erstellt zwei Textdateien.
Eine nennt man z.B. "lprozess.txt" und die andere "aprozess.txt"
Nun gibt man jeder MySQL Abfrage eine "ProzessID" (die letzte wird dann aus "lprozess.txt" ausgelesen und die Zahl in "lprozess.txt" wird um eins erhöht).
Dann macht man eine Schleife (mit sleep() z.B. drin) die solange läuft, bis die Zahl in "aprozess.txt" die gleiche ist wie die "ProzessID" der Abfrage.
Wenn es die gleiche ist wird die MySQL-Abfrage ausgeführt und die Zahl in "aprozess.txt" wird um eines erhöht.
Dieses passiert dann halt für jede MySQL-Abfrage.
Meine Befürchtung:
Das ganze Script wird dadurch mega langsam, da für jede MySQL-Abfrage Xmal die "aprozess.txt" ausgelesen werden muss.
Und die Serverauslastung würde dadurch auch steigen.