Thema: Delphi Firebird Geschwindigkeit

Einzelnen Beitrag anzeigen

Benutzerbild von DelphiBandit
DelphiBandit

Registriert seit: 19. Feb 2007
Ort: In der Lüneburger Heide
165 Beiträge
 
Delphi 10.4 Sydney
 
#22

Re: Firebird Geschwindigkeit

  Alt 9. Mär 2010, 14:10
Wir haben im Prinzip das gleiche Problem, wie es hier bisher beschrieben wurde. Deshalb habe ich den Thread mal wieder nach oben geholt, in der Hoffnung es hat hierzu jemand vielleicht neue Erkenntnisse gewonnen.

Wir haben zwei fast baugleiche Maschinen, E8400 Core2Duo. DB ist Firebird SuperServer 1.56, eine mit XP, die andere mit Server 2008R2 x64. Die Datenbank ist ca. 500 MByte gross, gecached werden 10000 Pages a 8192 Byte, also fast 1/5 der gesamten DB.

Alle Queries sind prepared und werden innerhalb der Schleifen-Abfragen mit Parametern versorgt. DB-Zugriff über IBObjects.

Lassen wir den einen Programmpunkt zum Zusammensuchen von Daten lokal, egal auf welcher Maschine laufen dauert das ca. 1 Sekunde. Geht der Zugriff über Netzwerk, dann dauert es ca. 17 Sekunden (100 MBit, 2% Netzwerklast). Umstellung auf GBit ca. 9 Sekunden bei 0,58% Netzwerklast. Grosse Dateien zwischen den Rechnern hin- und herkopieren - ca. 40 MByte / Sekunde bei 80% Netzlast

Was ich bisher schon alles probiert habe:
- Diverse Parameter in der firebird.conf (Cache / PageSize / Affinity etc.)
- Datenbank auf dem Server auf eine RAM-Disk packen, kein Unterschied!
- Umstellung der gesamten DB mit Backup/Restore auf Firebird 2.5 RC2 SuperClassic x64, genauso langsam
- Switch rausnehmen und beide Rechner per Crosslink direkt verbunden
- Langsameren Server (Notebook mit Pentium M760), dauert es ca. 20 Sekunden
- Beide Karten hart auf 1GB Fullduplex umgestellt
- google bis zum Abwinken befragt, aber nichts Stichhaltiges dazu gefunden

Was mich daran erschreckt ist das dümpelnde Netzwerk, warum kann der FBServer-Prozess die Daten nicht schneller an den Client schicken? Lokal schnellt die CPU-Last auf dem einen Kern auf fast 100% hoch und die Antwort der Daten erfolgt fast verzugslos.

Ich habe so den Eindruck als kann/will/darf der DB-Prozess die Daten nicht schneller bei der Netzwerkkarte abliefern? Der FBServer-Prozess dümpelt übrigens genauso vor sich hin und kommt nicht über 5% CPU-Last hinaus.

Hat jemand von Euch dazu etwas herausgefunden oder ggf. noch einen Tipp was ich übersehen haben könnte?
Carsten
  Mit Zitat antworten Zitat