Einzelnen Beitrag anzeigen

Niko

Registriert seit: 23. Jun 2003
416 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Firebird aus Thread heraus...

  Alt 16. Nov 2007, 15:08
Hi,

ich gehe mal davon aus, dass du pro Anfrage einen Thread erzeugst oder wiederverwendest. Von einer einzelnen Verbindung und entsprechender Synchronistation in der Anwendung die dafür sorgt, dass immer nur ein Thread auf die Verbindung zugreift, würde ich auf jeden Fall abraten. Das Transaktionssystem des Datenbankservers kann solche parallelen Anfragen im Allgemeine viel effizienter koordinieren.

Wenn jeder Thread nur sehr wenige einfache Anfragen stellt könnte es allerdings passieren, dass der Verbindungsauf- und abbau mehr Ressourcen verbraucht, als die eigentlichen Anfragen, weshalb ich einen Verbindungspool vorschlagen würde, in dem einmal geöffnete Verbindungen zwischengespeichert und bei Bedarf wiederverwendet werden. Ich kenne mich mit IBX nicht aus, aber eventuell bieten die Komponenten bereits eine solche Möglichkeit. Falls du einen Threadpool verwendest liese sich das natürlich auch damit kombinieren, in dem jeder Thread seine Verbindung offen hält solange er sich im Pool befindet.
"Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking." (Dave Barry)
  Mit Zitat antworten Zitat