ich überlege derzeit, ein größeres Programm in eine echte Client-/Server-Architektur einzubauen.
Wenn du jetzt schon einen
DB-Server einsetzt ist das doch bereits eine Client/Server-Anwendung; was du vorhast, wäre dann eine Multi Tier Architektur, oder liege ich da falsch?
und es wäre immer nur eine Datenbankverbindung (nämlich Dienst <-> Datenbank) geöffnet.
Dann (mit 1 Datenbankverbindung) kannst du allerdings i.d.R. die Abfragen nur nacheinander ausführen. Das heißt, wenn ein Client eine Abfrage schickt, die z.B. 20 Sekunden benötigt, müssen alle anderen warten. Daher sollte man das "Multi Threaded" lösen und dazu brauchst du i.d.R. wieder mehrere Datenbankverbindungen, was aber auch nicht schlimm ist.
Gruß,
Olli