Krasse Laufzeitunterschiede beim Kopieren
Kalle_B
- datenbank
Hallöle,
mit eurer Hilfe der letzten Tage habe ich es heute hinbekommen:
Die ersten PHP- Programme laufen wahlweise auf Server A oder Server B, trotz Versionsunterschiede.
Server A: internet24, Dresden
-----------------------------
Tarif: Profi10, 17,20 EUR/Monat incl. MwSt
PHP- Version: 3.0.18
MySQL- Version: 3.23.58
seit 2001 (?)
Server B: Terions, Berlin
-------------------------
Tarif: Paket Bronze 3,50 EUR/Monat incl. MwSt
PHP- Version: 4.3.10
MySQL- Version: 4.1.9-log
seit Nov. 2004
Dabei ist die MySQL- Datenbank auf Server A das Original, die DB auf Server B eine Kopie.
Und jetzt kommts:
Mit dem Kopierprogramm kopiere ich per Klick einzelne Tabellen von DB-A nach DB-B
Läuft das Programm auf Server A, wird eine bestimmte Tabelle (6716 Sätze, 797,4 kB) in 202 Sekunden von A nach B kopiert, bei Programmlauf auf Server B in nur 12,5 Sekunden, ebenfalls von A nach B.
Wie ist das zu erklären? Ist der teurere Server so langsam oder kann es an der PHP- Version liegen?
Macht es einen Unterschied, ob auf eine "eigene" (auf demselben Server) oder auf eine "fremde" (anderer Server) Datenbank zugegriffen wird?
Lieben Gruß, Kalle.
Ach ja, noch was:
Die Inserts zeige ich als Protokoll an. Nun dachte ich, ich speichere einfach die Webseite und habe ganz nebenbei eine zusätzliche Datensicherung. Denkste! Der Firefox holt sich die Seite nochmal vom Server, es dauert nochmal 202 Sekunden.
Kann man auch direkt speichern?
Hallo Kalle,
Mit dem Kopierprogramm kopiere ich per Klick einzelne Tabellen von DB-A nach DB-B
Läuft das Programm auf Server A, wird eine bestimmte Tabelle (6716 Sätze, 797,4 kB) in 202 Sekunden von A nach B kopiert, bei Programmlauf auf Server B in nur 12,5 Sekunden, ebenfalls von A nach B.
Wie ist das zu erklären?
Ist der teurere Server so langsam
Kann durchaus sein, dass der teurere Server langsamer ist als der billigere.
oder kann es an der PHP- Version liegen?
Macht es einen Unterschied, ob auf eine "eigene" (auf demselben Server) oder auf eine "fremde" (anderer Server) Datenbank zugegriffen wird?
Hmm hmm: INSERTS sind teurere Operationen als SELECTS.
Fall 1:
Server A beschäftigt die Datenbank mit SELECT
Server A bedient PHP-Skript
Server B beschäftigt die Datenbank mit INSERT
Fall 2:
Server A beschäftigt die Datenbank mit SELECT
Server B bedient PHP-Skript
Server B beschäftigt die Datenbank mit INSERT
2 ist wesentlich schneller als 1
INSERTS sind aufwendiger als SELECTS. In Fall 2 hat Server B wesentlich mehr zu tun als Server A. In Fall 1 ist dies schwerer abzuschätzen, Server B hat vielleicht ebensoviel zu tun wie Server A, vielleicht noch einiges mehr. Dazu müsstest Du die Serverlast messen.
Da in Fall 2 das ganze viel schneller abläuft, sieht es so aus, als sei Server A wesentlich näher seiner Lastgrenze als Server B. Die Vermutung liegt nahe, dass Du bei Server B für wesentlich weniger Geld wesentlich mehr Leistung und wesentlich neuere Software zur Verfügung hast.
Ob die Kombination von PHP4/MySQL 4.x auf gleicher Hardware soviel leistungsfähiger ist als PHP3/MySQL 3.23.x, das glaube ich kaum.
Nun ja, ich wiederhole liebend gerne, was Dir schon mehrfach gesagt wurde:
Ein Server mit PHP3 kann heutzutage nicht als professionell angesehen werden.
Entwicklung und Hosting auf einem solchen System ebenfalls nicht.
Freundliche Grüße
Vinzenz