Fritz
2014-12-11 18:52:02 UTC
Tagchen!
Momentan habe ich einen Webserver (indy), der mit
einer mySQL-Datenbank kommuniziert. Diese Kommunikation
findet bei fast jedem http-Request (innerhalb des
entsprechenden Threads) statt und erzeugt jedes Mal
eine Verbindung zur Datenbank und belegt dementsprechend
auch jedes Mal einen Port. Heißt also im Klartext:
Wenn 65k Anfragen auf einmal kommen, ist der Webserver
platt, weil keine freien Ports mehr da sind für die Abfragen.
Die Lösung wäre, dass alle mySQL-Abfragen über eine einzige
TCP-Verbindung laufen. Hat jemand einen Tip, wie man das
hinbekommt? Das größte Problem ist imho, dass die jeweiligen
Verbindungsaufbauten aus unterschiedlichen Threads
gemacht werden. Das zweite Problem ist, dass meine aktuell
genutzte sql-komponente immer nur eine Abfrage pro Instanz
zulässt.
Gibt es dafür eine Datenbank-komponente, die man dafür
verwenden kann? Gibt es andere Möglichkeiten?
Bis dann
Fritz
Momentan habe ich einen Webserver (indy), der mit
einer mySQL-Datenbank kommuniziert. Diese Kommunikation
findet bei fast jedem http-Request (innerhalb des
entsprechenden Threads) statt und erzeugt jedes Mal
eine Verbindung zur Datenbank und belegt dementsprechend
auch jedes Mal einen Port. Heißt also im Klartext:
Wenn 65k Anfragen auf einmal kommen, ist der Webserver
platt, weil keine freien Ports mehr da sind für die Abfragen.
Die Lösung wäre, dass alle mySQL-Abfragen über eine einzige
TCP-Verbindung laufen. Hat jemand einen Tip, wie man das
hinbekommt? Das größte Problem ist imho, dass die jeweiligen
Verbindungsaufbauten aus unterschiedlichen Threads
gemacht werden. Das zweite Problem ist, dass meine aktuell
genutzte sql-komponente immer nur eine Abfrage pro Instanz
zulässt.
Gibt es dafür eine Datenbank-komponente, die man dafür
verwenden kann? Gibt es andere Möglichkeiten?
Bis dann
Fritz