-
31.01.12 11:36 #16
- Registriert seit
- Jun 2002
- Ort
- Saarbrücken (Saarland)
- Beiträge
- 9.886
- Blog-Einträge
- 29
Hallo,
btw. bei den aktuell gängigen MySQL Versionen kannst du mit einem Insert Befehl auch mehrere Zeilen gleichzeitig einfügen.
Siehe auch:Code sql:1
INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
http://dev.mysql.com/doc/refman/5.5/en/insert.html
Gruß TomJava rocks!
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
Ich überlege gerade, wie ich die Sache mit dem Aufteilen am besten realisiere;
Meine Überlegungen:
1. Hauptscript wird von Cronjob aufgerufen.
2. Hauptscript zählt alle Einträge in Datenbank(count(id) oder SQL_CALC_FOUND_ROWS)
3. Die Einträge durch eine vordefinierte Zahl teilen, wieviele Prozesse man haben möchte
z.B. 20 Prozesse vordefiniert: 100:20=5
Was mach ich aber bei einer Zahl von 37.845?
4. Das Unterscript mit entsprechenden Parametern aufrufen:
1. Prozess
2. ProzessCode :1
php -f script.php 1 5
Das ganze geht bis zu den 20 Prozessen.Code :1
php -f script.php 6 10
1 = StartID
2 = EndID
5. Halt wie jetzt schon in dem Unterscript alle updaten.
Währe das so gut realisiert, hat jemand noch eine verbesserung/bessere Idee?Tutorials: Ajax JSON Chat PHP
-
31.01.12 13:18 #18
- Registriert seit
- May 2007
- Ort
- Dresden (Sachsen)
- Beiträge
- 1.956
Ich weiß nicht, ob dass bei PHP mit exec() oder shell_exec() oder der Variante mit den Backticks möglich ist, aber normalerweise kann man Prozesse im Hintergrund ausführen lassen, in dem man am Ende noch ein Und-Zeichen "&" einfügt, also in deinem Fall
Code :1
php -f script.php 6 10 &
Kurzinformation (in Englisch): http://unixhelp.ed.ac.uk/shell/jobz2.htmlIch mag:- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
oder wenn man ein "nohup" an den Anfang des Befehls setzt...
-
Also Insert am schluss ausführen beschleunigt das Skript dermaßen.
Bin jetzt von 5 auf 2Sekunden runter nur durch optimieren des Inserts.
Wie sieht es jetzt mit den Updates aus?
Gibt es da auch so ne' Art multiupdate?Tutorials: Ajax JSON Chat PHP
-
So hab das ganze jetzt komplett gelöst bekommen,
auch mit update.
Vorherige Dauer bei 10 Datensätzen: 5 Sekunden.
Optimierte Dauer bei 10 Datensätzen: 1,2 Sekunden.
Echt geniale Beschleunigung
Jetzt das ganze Multithreading machen und es rennt alles durch.Tutorials: Ajax JSON Chat PHP
-
Ich wollt nur nochmal sagen das ich jetzt eine perfekte Lösung(für mich) gefunden habe:
cURL Multi.
1000 Files brauchen 200 Sek. mit cURL Multitasking und das bei meiner lahmen 16.000 und WLAN bei mir zuhause.
Ich starte cURL Multi immer mit 100 Requests.
Bei 1000 Files lass ich das ganze 10 mal durchführen.Tutorials: Ajax JSON Chat PHP
Ähnliche Themen
-
Multithreading
Von bspainkf36 im Forum JavaAntworten: 4Letzter Beitrag: 11.10.09, 17:00 -
Multithreading
Von Paranoia im Forum .NET Web und KommunikationAntworten: 1Letzter Beitrag: 24.06.08, 17:32 -
Multithreading
Von pria im Forum .NET Windows FormsAntworten: 10Letzter Beitrag: 09.11.07, 11:42 -
Multithreading
Von Kaladial im Forum JavaAntworten: 10Letzter Beitrag: 20.09.07, 13:40 -
[c++] multithreading
Von cyrrus im Forum C/C++Antworten: 6Letzter Beitrag: 01.11.02, 20:08



2Danke


Zitieren
Login





