Einzelnen Beitrag anzeigen

Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#1

SQL Server : Perfomanceprobleme - sinnvolle DB Verbindung gesucht

  Alt 24. Feb 2011, 10:53
Datenbank: MS SQL 2005 • Version: Express • Zugriff über: ADO
Moin zusammen,

mich würde mal interessieren, wie Ihr eure Anwendung in Bezug auf die SQL Verbingung programmiert bzw. einstellt.

Zitat:
Mein SQL Server: 2 CPU's 2.66GHz mit 2GB RAM
Ich habe seit ein paar Tagen Performanceprobleme mit meinem SQL 2005 Express Server.

Morgens, wenn die Anwender sich am Computer anmelden, wird mein Programm ausgeführt, welches Computerinformationen über WMI ermittelt und in die SQL DB schreibt. Das Programm braucht normalerweise nicht länger als 30 Sekunden, um die Daten zu ermitteln und in die DB zu schreiben.

Es kann vorkommen, dass 500 Anwender gleichzeit Daten in die DB schreiben. In dieser Zeit ist der SQL Server an seinem Limit und hat längere bis ganz lange Antwortzeiten. Wenn die Stoßzeit des Anmeldens vorbei ist, ist er wieder performat.

SQL Einstellungen im Programm:
Code:
KeppConnecton: True
Datenübermittlung via TADODataSet
Sollte man eventuell auf TADOCommand umsteigen und mit Parameter arbeiten und ggf. prepare verwenden? Massendaten sind es aber eigentlich nicht. Wäre schön zu wissen, wie ihr das händeln würdet bzw. was ich noch optimieren könnte.

Des weiteren habe ich Programme, die die Informationen anzeigen für eine handvoll Anwender. Würdet ihr die SQL Verbindung immer wieder trennen nach einer DB Abfrage oder einmal öffnen und KeppConnection True lassen und erst mit dem Programmende die Verbindung schließen?

Ich habe das Gefühl, dass er die Resourcen nicht frei gibt, wenn ich die Verbindung mit SQLConnection.Close beendet im Programm. Erst wenn das ganz Programm geschlossen wird.

Wäre schön zu wissen, wie Ihr solche Anforderungen löst?

Vielen Dank im voraus und hoffe auf Eure Erfahrungen.

Sven
  Mit Zitat antworten Zitat