Hallo!
Ich habe ein Problem. Ich will nicht für jedes Querry ein neues Klassenobjekt DatabaseManipulator() erstellen, das auf die Datenbank connecten und dann ein Query ausführen, da Queries zu bestimmten Tageszeiten dann ziemlich oft auftreten würden (Wenn viele Nutzer gerade in einem IRC Chat-Channel sind, da bei jedem PRIVMSG ein Query an die Datenbank gesendet wird) und somit auch viele Klassenobjekte in kurzer Zeit erstellt werden würden, funktioniert zwar, find ich aber nicht schick und schlägt sich auf die CPU.
Also hab ich mir gedacht, 'Biste schlau, erstellste das Klassenobjekt nur einmal, baust damit eine Connection zur Datenbank auf, sendest alle Query-Anfragen über die gleiche "Connection con;"'
War dann doch nicht so schlau, irgendwie kommt es nach spätestens einer Stunde (Da es auch mal vorkommen kann das ziemlich lange KEINE Query-Anfragen an die Datenbank geschickt werden, wenn zB. in der Nacht die meisten Chat-Nutzer schlafen sind) dann zu einem Connection-Abbruch, also einem PING TIMOUT oder was auch immer das in diesem Fall ist.
Gibt es einen Trick oder eine Methode/Möglichkeit die Verbindung zur Datenbank möglichst lange (KEEP_ALIVE ö.Ä.) offen zu halten? Derzeit hab ich eine IF-Abfrage im Thread, wenn die Connection abgebrochen ist baut er eine neue auf. Fänds aber schöner wenn die garnicht bis selten abreissen würde!
Gruß gampey
Ich habe ein Problem. Ich will nicht für jedes Querry ein neues Klassenobjekt DatabaseManipulator() erstellen, das auf die Datenbank connecten und dann ein Query ausführen, da Queries zu bestimmten Tageszeiten dann ziemlich oft auftreten würden (Wenn viele Nutzer gerade in einem IRC Chat-Channel sind, da bei jedem PRIVMSG ein Query an die Datenbank gesendet wird) und somit auch viele Klassenobjekte in kurzer Zeit erstellt werden würden, funktioniert zwar, find ich aber nicht schick und schlägt sich auf die CPU.
Also hab ich mir gedacht, 'Biste schlau, erstellste das Klassenobjekt nur einmal, baust damit eine Connection zur Datenbank auf, sendest alle Query-Anfragen über die gleiche "Connection con;"'
War dann doch nicht so schlau, irgendwie kommt es nach spätestens einer Stunde (Da es auch mal vorkommen kann das ziemlich lange KEINE Query-Anfragen an die Datenbank geschickt werden, wenn zB. in der Nacht die meisten Chat-Nutzer schlafen sind) dann zu einem Connection-Abbruch, also einem PING TIMOUT oder was auch immer das in diesem Fall ist.
Gibt es einen Trick oder eine Methode/Möglichkeit die Verbindung zur Datenbank möglichst lange (KEEP_ALIVE ö.Ä.) offen zu halten? Derzeit hab ich eine IF-Abfrage im Thread, wenn die Connection abgebrochen ist baut er eine neue auf. Fänds aber schöner wenn die garnicht bis selten abreissen würde!
Gruß gampey