Unregelmässiges, langsames Verhalten
Moderator: SYNERPY
-
- Beiträge: 6
- Registriert: Mi Feb 10, 2010 9:09 am
- Wohnort: Wittenbach (Schweiz)
Unregelmässiges, langsames Verhalten
Hallo,
ich habe ein recht seltsames Problem, welches ich hier zur Diskussion stellen will.
Ein und die selbe Funktion reagiert mit gravierend unterschiedlichen Antwortzeiten. Diese Verzögerungen sind teilweise störend lang.
Verwendet wird ein Linux- Server mit Ubuntu (Wine) gegen einen Windows Client.
Anfangs glaubt ich, diese Unregelmässigkeit hätte direkt etwas mit Averp zu tun. Im Laufe der Suche habe ich aber Averp direkt ausschliessen können.
Es wurde folgende Test gemacht :
Ein kleines Netz nur mit Server und dem genannten Client.
IBExpert auf dem Client mit dem SQL "select * from v_bmand" aufrufen.
Dieses Kommando wurde einige male aufgerufen. Jedesmal wurde mit Wireshark die Netzwerkbelastung, resp. die Netzwerktätigkeit mitgeschnitten.
Die ausgewiesene Berechnungszeit des Servers lag immer bei ca. 100ms
Die Antwortzeit, bis das Resultat auf dem Clientschirm vorlag schwankte zwischen 1s und 66s (12 Versuche 8x ca. 1s / 1x10s / 2xca. 17s / 1x66s).
Auf dem Netzwerk herschte in den Wartezeiten grabesstille. Somit kann die Kommunikation ausgeschlossen werden.
Der Client dümpelt irgenwo bei 10-20% Last während der Wartezeit.
Somit entfällt auch der als Problemherd.
Die performance-info von IBExpert weist eine Berchnungszeit auf dem Server von ca. 100ms aus. Somit tut der Server was er soll, und das in akzeptabler Zeit.
Die Gretchenfrage lautet, wo wird den nun diese Wartezeit verbraten? Ist der Aufbau oder die Argumentation so wie beschrieben falsch? Oder habe ich etwas wesentliches übersehen?
Für Interessierte können die Resultate gepostet werden.
Ich bin für jeden Hinweis dankbar.
Gruss Kilias Freund
ich habe ein recht seltsames Problem, welches ich hier zur Diskussion stellen will.
Ein und die selbe Funktion reagiert mit gravierend unterschiedlichen Antwortzeiten. Diese Verzögerungen sind teilweise störend lang.
Verwendet wird ein Linux- Server mit Ubuntu (Wine) gegen einen Windows Client.
Anfangs glaubt ich, diese Unregelmässigkeit hätte direkt etwas mit Averp zu tun. Im Laufe der Suche habe ich aber Averp direkt ausschliessen können.
Es wurde folgende Test gemacht :
Ein kleines Netz nur mit Server und dem genannten Client.
IBExpert auf dem Client mit dem SQL "select * from v_bmand" aufrufen.
Dieses Kommando wurde einige male aufgerufen. Jedesmal wurde mit Wireshark die Netzwerkbelastung, resp. die Netzwerktätigkeit mitgeschnitten.
Die ausgewiesene Berechnungszeit des Servers lag immer bei ca. 100ms
Die Antwortzeit, bis das Resultat auf dem Clientschirm vorlag schwankte zwischen 1s und 66s (12 Versuche 8x ca. 1s / 1x10s / 2xca. 17s / 1x66s).
Auf dem Netzwerk herschte in den Wartezeiten grabesstille. Somit kann die Kommunikation ausgeschlossen werden.
Der Client dümpelt irgenwo bei 10-20% Last während der Wartezeit.
Somit entfällt auch der als Problemherd.
Die performance-info von IBExpert weist eine Berchnungszeit auf dem Server von ca. 100ms aus. Somit tut der Server was er soll, und das in akzeptabler Zeit.
Die Gretchenfrage lautet, wo wird den nun diese Wartezeit verbraten? Ist der Aufbau oder die Argumentation so wie beschrieben falsch? Oder habe ich etwas wesentliches übersehen?
Für Interessierte können die Resultate gepostet werden.
Ich bin für jeden Hinweis dankbar.
Gruss Kilias Freund
-
- Site Admin
- Beiträge: 2673
- Registriert: Di Feb 10, 2004 5:48 am
- Wohnort: Bayreuth
Welches Firebird läuft auf dem Server?
Irrespektive dessen, sind die Zeiten jenseits von Gut und Böse.
Woher kommt denn die Auslastung von 20% auf dem Client? Das scheint doch sehr viel für einen Rechner, der dabei eigentlich gar nichts machen sollte.
Was macht die Festplatte des Servers bzw. des Clients?
Sehr seltsam ist die extreme Schwankung. 1 Sekunde entspricht den Erwartungen, alles darüber ist sehr sehr seltsam. Sind die Ergebnisse chronologisch zu verstehen?
Was sagt der Header der Datenbankstatistik?
Irrespektive dessen, sind die Zeiten jenseits von Gut und Böse.
Woher kommt denn die Auslastung von 20% auf dem Client? Das scheint doch sehr viel für einen Rechner, der dabei eigentlich gar nichts machen sollte.
Was macht die Festplatte des Servers bzw. des Clients?
Sehr seltsam ist die extreme Schwankung. 1 Sekunde entspricht den Erwartungen, alles darüber ist sehr sehr seltsam. Sind die Ergebnisse chronologisch zu verstehen?
Was sagt der Header der Datenbankstatistik?
-
- Beiträge: 6
- Registriert: Mi Feb 10, 2010 9:09 am
- Wohnort: Wittenbach (Schweiz)
Firebird Version 1.5.5.4926
Die Festplatte des Clients tut +/- nichts.
Die des Servers verhält sich ähnlich.
Die Ausgabe der Datenbankstatistik (ohne Plan)
Query
------------------------------------------------
select * from V_bmand
Query Time
------------------------------------------------
Prepare : 109.00 ms
Execute : 157.00 ms
Avg fetch time: 157.00 ms
Memory
------------------------------------------------
Current: 9'299'344
Max : 10'150'256
Buffers: 32'838
Operations
------------------------------------------------
Read : 0
Writes : 0
Fetches: 142
Enchanced Info:
+------------+-----------+-----------+-------------+---------+----
| BADR| 0 | 1 | 0 | 0 | 0 | 0 |
|BKUGRU| 0 | 1 | 0 | 0 | 0 | 0 |
| BLAGER| 0 | 2 | 0 | 0 | 0 | 0 |
| BLAND| 0 | 1 | 0 | 0 | 0 | 0 |
| BMAND| 0 | 0 | 1 | 0 | 0 | 0 |
| BMWST| 0 | 1 | 0 | 0 | 0 | 0 |
| BPLZ| 0 | 1 | 0 | 0 | 0 | 0 |
| BSPRA| 0 | 1 | 0 | 0 | 0 | 0 |
| BWAER| 0 | 1 | 0 | 0 | 0 | 0 |
+--------+-----------+-------------+---------+---------+---------+
Für mein dafürhalten liegt alles im grünen Bereich, abgesehen von den Antwortzeiten.
Gruss Kilias Freund
Die Festplatte des Clients tut +/- nichts.
Die des Servers verhält sich ähnlich.
Die Ausgabe der Datenbankstatistik (ohne Plan)
Query
------------------------------------------------
select * from V_bmand
Query Time
------------------------------------------------
Prepare : 109.00 ms
Execute : 157.00 ms
Avg fetch time: 157.00 ms
Memory
------------------------------------------------
Current: 9'299'344
Max : 10'150'256
Buffers: 32'838
Operations
------------------------------------------------
Read : 0
Writes : 0
Fetches: 142
Enchanced Info:
+------------+-----------+-----------+-------------+---------+----
| BADR| 0 | 1 | 0 | 0 | 0 | 0 |
|BKUGRU| 0 | 1 | 0 | 0 | 0 | 0 |
| BLAGER| 0 | 2 | 0 | 0 | 0 | 0 |
| BLAND| 0 | 1 | 0 | 0 | 0 | 0 |
| BMAND| 0 | 0 | 1 | 0 | 0 | 0 |
| BMWST| 0 | 1 | 0 | 0 | 0 | 0 |
| BPLZ| 0 | 1 | 0 | 0 | 0 | 0 |
| BSPRA| 0 | 1 | 0 | 0 | 0 | 0 |
| BWAER| 0 | 1 | 0 | 0 | 0 | 0 |
+--------+-----------+-------------+---------+---------+---------+
Für mein dafürhalten liegt alles im grünen Bereich, abgesehen von den Antwortzeiten.
Gruss Kilias Freund
-
- Beiträge: 6
- Registriert: Mi Feb 10, 2010 9:09 am
- Wohnort: Wittenbach (Schweiz)
Auslastung Client
Die Auslastung des Clients ist sehr gering.
Während der Wartezeit sieht man manchmal eine Spitze von max. 20%, die aber kaum länger als 1s dauert. Mehrheitlich tümmelt sich der Wert um 4%.
Gruss Kilias Freund
Während der Wartezeit sieht man manchmal eine Spitze von max. 20%, die aber kaum länger als 1s dauert. Mehrheitlich tümmelt sich der Wert um 4%.
Gruss Kilias Freund
-
- Beiträge: 6
- Registriert: Mi Feb 10, 2010 9:09 am
- Wohnort: Wittenbach (Schweiz)
Weitere Erkenntnis
Nach weiteren Versuchen habe ich folgende neuen Resultate:
An Stelle von IBExpert habe ich genau das geleiche Query mit ISQL ausgeführt.
Dort liegt die Antwort immer sofort vor (25x <1s).
Ich habe das auch mit unterschiedlichen Query's probiert, aber nie eine Antwortzeit > 1s erhalten.
Das Verhalten muss also irgendwo mit IBExpert zusammenhängen.
Im Taskmanager habe ich die Anzeige der Kernelzeiten aktiviert. Die sind klar über 80% während der Wartezeiten bei einer Abfrage mit IBExpert.
Gibt es bei IBExpert wesentliche Konfigurationsschalter, die ein solches Verhalten erklären?
Gruss Kilias Freund
An Stelle von IBExpert habe ich genau das geleiche Query mit ISQL ausgeführt.
Dort liegt die Antwort immer sofort vor (25x <1s).
Ich habe das auch mit unterschiedlichen Query's probiert, aber nie eine Antwortzeit > 1s erhalten.
Das Verhalten muss also irgendwo mit IBExpert zusammenhängen.
Im Taskmanager habe ich die Anzeige der Kernelzeiten aktiviert. Die sind klar über 80% während der Wartezeiten bei einer Abfrage mit IBExpert.
Gibt es bei IBExpert wesentliche Konfigurationsschalter, die ein solches Verhalten erklären?
Gruss Kilias Freund
was heisst mit ibexpert ausgeführt, jedes mal auch neu connected oder die Verbindung weiterhin benutzt? Wir können mit einem Proxy relativ einfach sehen, was wann über die Leitung geht, aber 66 Sekunden kann ich mir überhaupt nicht erklären, es sei denn, da wurschtelt irgendein Antivirenprogramm auf dem Client mit rum, weil das zum Beispiel die
Inhalt der Datei ibexpert.stg prüft. Machen halt manche antivirenprogs
daher
1. Tip: ggf antivirensoftware abschalten
2. Tip: In IBExpert folgende Optionen aktivieren 6-10
http://ibexpert.net/ibe/index.php?n=Doc ... Additional
3. Tip: processmonitor von sysinternals.com runterladen, und dann mal schauen, was da so in der Kiste abläuft
Inhalt der Datei ibexpert.stg prüft. Machen halt manche antivirenprogs
daher
1. Tip: ggf antivirensoftware abschalten
2. Tip: In IBExpert folgende Optionen aktivieren 6-10
http://ibexpert.net/ibe/index.php?n=Doc ... Additional
3. Tip: processmonitor von sysinternals.com runterladen, und dann mal schauen, was da so in der Kiste abläuft
-
- Beiträge: 6
- Registriert: Mi Feb 10, 2010 9:09 am
- Wohnort: Wittenbach (Schweiz)
Anpassungen vorgenommen
Die Datenbank wurde immer mit der gleichen Verbindung belassen.
Das Einschalten der Optionen 6-10 hat gebracht, dass die Zeiten nie mehr über 20s lagen.
Das Abschalten des Avira hat nichts gebracht.
Das Beobachten mit Sysinternals zeigt, das der Process ibexpert 100% der CPU - Zeit benötigt und auch erhält. Während dieser Zeit passiert nichts anderes. Dies ist insbesondere erstaunlich, weil ich diese Last mit dem windowseigenen Taskmonitor nicht gesehen habe (Oder schlicht übersehen?).
Kann man ibexpert "verkonfigurieren"? Bin mir eigentlich keiner Schuld bewusst, scheint aber irgenwie dort drin zu hängen.
Gruss Kilias Freund
Das Einschalten der Optionen 6-10 hat gebracht, dass die Zeiten nie mehr über 20s lagen.
Das Abschalten des Avira hat nichts gebracht.
Das Beobachten mit Sysinternals zeigt, das der Process ibexpert 100% der CPU - Zeit benötigt und auch erhält. Während dieser Zeit passiert nichts anderes. Dies ist insbesondere erstaunlich, weil ich diese Last mit dem windowseigenen Taskmonitor nicht gesehen habe (Oder schlicht übersehen?).
Kann man ibexpert "verkonfigurieren"? Bin mir eigentlich keiner Schuld bewusst, scheint aber irgenwie dort drin zu hängen.
Gruss Kilias Freund
eine Möglichkeit wäre, die Datenbankregistrerungen mal zu löschen
(das liegt üblicherweise in einer Datei ibexpert.stg in \Documents and Settings\<user>\Application Data\HK-Software\IBExpert).
Am besten aber einfach umbenennen, weil damit auch die gesamten Registrierungen gelöscht werden.
Alternativ und immer empfehlenswert: User database option aktivieren
http://www.ibexpert.net/ibe/index.php?n ... #IBEUserDB
dann wird der inhalt der stg datei in eine fb oder ib Datenbank übertragen und zukünftig von dort geladen
(das liegt üblicherweise in einer Datei ibexpert.stg in \Documents and Settings\<user>\Application Data\HK-Software\IBExpert).
Am besten aber einfach umbenennen, weil damit auch die gesamten Registrierungen gelöscht werden.
Alternativ und immer empfehlenswert: User database option aktivieren
http://www.ibexpert.net/ibe/index.php?n ... #IBEUserDB
dann wird der inhalt der stg datei in eine fb oder ib Datenbank übertragen und zukünftig von dort geladen
-
- Beiträge: 6
- Registriert: Mi Feb 10, 2010 9:09 am
- Wohnort: Wittenbach (Schweiz)
Manchmal hilfts...
Zuerst Danke für die schnelle und zielfführende Hilfe.
Ich habe die User database option aktiviert. Seither liegen die Antwortzeiten immer <1s (20 Versuche).
Ich betrachte das Problem somit als erledigt.
(Verkneiffen der Frage nach dem Warum!)
Gruss kilias.freund
Ich habe die User database option aktiviert. Seither liegen die Antwortzeiten immer <1s (20 Versuche).
Ich betrachte das Problem somit als erledigt.
(Verkneiffen der Frage nach dem Warum!)
Gruss kilias.freund