![]() |
Datenbank: Firebird • Version: 3 • Zugriff über: UniDAC
Firebird 3 - Arbeitsspeicher Auslastung
Hallo,
ein Firebird-Server bei uns hat eine ungewöhnlich hohe Arbeitsspeicherauslastung. Pagesize: 16.384 Pagebuffers: 10.000 Datenbankgröße: ca. 600MB Aktive Verbindungen: 34 Älteste Verbindung ca. 2-3 Stunden alt, demnach auch die älteste Transaktion maximal so alt. Die Arbeitsspeicherauslastung ist bei über 16GB? Ist noch ok der Server hat 32GB zur Verfügung. Es stört auch aktuell nicht aber es würde mich schon interessieren was das sein könnte. Woran kann das liegen? Jemand eine Idee? |
AW: Firebird 3 - Arbeitsspeicher Auslastung
hast du mal in MON$MEMORY_USAGE nachgesehen. ist zwar nicht immer selbsterklärend wie man das zuordnet aber dafür gibt es ibexpert ;-)
gründe können sein: -irgendwelche änderungen an der firebird.conf -viele ative statements mit non indexed reads, mit group by, order by non indexed, viel lange varchars in solchen result sets -viele daten in GTT (global temporary table=memory tables) -sehr komplexe metadaten (bei der averp datenbank braucht man ca 1gb ram pro connection, weil das ein metadatenmonster ist) -viele statements in mon$statements prepared gelassen wegen programmierfehler (runtime instance tquery ohne close/free) u.v.m. ram speicher ist ja dafür da benutzt zu werden und nicht nur das servergehäuse zu beheizen und solange es nicht dynmaisch schnell größer wird it das noch kein problem. |
AW: Firebird 3 - Arbeitsspeicher Auslastung
Zitat:
Auch in der Auswertung wenn ich alles zusammenzähle komme ich 169MB und nicht 16GB. Zitat:
Zitat:
Zitat:
- Es gibt 7 solcher Tabellen mit "COMMIT PRESERVE ROWS". (Wenn ich mit einer anderen Connection reingucke sind ja aber leer) Zitat:
Zitat:
|
AW: Firebird 3 - Arbeitsspeicher Auslastung
was passiert denn nach db server restart? braucht der sofort so viel memory?
ansonsten mal trace api mitlaufen lassen, das könnte hinweise bringen (falls das zu schnell das limit vom standard 10mb erriecht und deshalb stop setzt das limit dafür in firebird.conf höher. ist da denn sonst noch alles auf default? und gtt von anderer connection anschauen bringt nie ergebnisse, das wusstest du aber ja schon. ab fb5 gibt das noch mehr infos zum speicherverbrauch, das hilft dir bei fb3 aber nur begrenzt. |
AW: Firebird 3 - Arbeitsspeicher Auslastung
Ich dachte zuerst an die Einstellung in der Firebird.conf:
ServerMode = Super Aber da Super Standard ist, wird da sicher nicht Classic stehen? Ansonsten gibt es noch einige Parameter wie: TempBlockSize, TempCacheLimit, LockMemSize, LockHashSlots, FileSystemCacheThreshold, DefaultDbCachePages, TcpRemoteBufferSize, TempBlockSize, TempCacheLimit die möglicherweise auf den Speicherverbrauch Einfluss haben. Frank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz