Ich möchte Datenbankverbindung Pooling zu entwickeln.Datenbankverbindung Pooling Datenstruktur
Könnte mir bitte jemand sagen, welche Datenstruktur benötigt wird, um den Pool zu verwalten?
Ich möchte Datenbankverbindung Pooling zu entwickeln.Datenbankverbindung Pooling Datenstruktur
Könnte mir bitte jemand sagen, welche Datenstruktur benötigt wird, um den Pool zu verwalten?
Anstatt eigene zu entwickeln, warum nicht eine Bibliothek wie Commons DBCP verwenden, die weit verbreitet ist und gut getestet wurde.
Ist eine Open-Source-Lösung das, wonach Sie suchen?
Nein. Ich möchte selbst schreiben. – Tony
Ich glaube nicht, dass eine bestimmte Datenstruktur im Designmuster des Objektpools verwendet werden kann: http://en.wikipedia.org/wiki/Object_pool Der Hintergrundspeicher eines Objektpools könnte so einfach wie ein Array sein - So verwalten Sie den Zugriff auf eine begrenzte Anzahl von Ressourcen durch eine nicht definierte Anzahl von Ressourcenbenutzern, die die Aspekte eines Objektpools definieren. – diciu
@diciu - Erwähnte Link ist kaputt ... Können Sie es aktualisieren? – nanosoft
Sehen Sie diese Sun Developer Tutorial: Connection Pooling:
In Versionen vor JDBC 2.0 jede Datenbanksitzung erfordert eine neue Verbindung und Anmeldung, auch wenn die vorherige Verbindung und verwendet-Login die gleiche Tabelle und Benutzerkonto. Wenn Sie eine JDBC-Version vor 2.0 verwenden und die Leistung verbessern möchten, können Sie stattdessen JDBC-Verbindungen zwischenspeichern.
http://www.javaworld.com/jw-06-1998/jw-06-object-pool.html See. Viel Glück!
Es sollte mit Object Pool Design-Muster implementiert werden. Sie können darüber in Kircher, Michael; Prashant Jain; (2002-07-04). "Pooling Pattern". EuroPLoP 2002. Retrieved on 2007-06-09. oder in Object Pool Design Pattern lesen. Java-Implementierung für ObjectPool
und JDBCConnectionPool
Klassen finden Sie here.
Object Pool ist in der Regel ein Singletons mit zwei Sammlungen von Objekten (zB Datenbankverbindungen) innen:
Diese Sammlungen können als Lists
oder HashTables
oder etwas anderes implementiert werden, hängt von Ihren Bedürfnissen ab. Für einfache ObjectPool - LinkedList
Struktur wird gut genug sein.
Sie müssen in der Regel:
Auf dieses können Sie dann unabhängig von Protokollierung bauen/Überwachung Sie benötigen.
Es gibt auch Befürworter für Standard-Verbindungspool-Frameworks. Ich weiß, es gibt diejenigen, die nicht zustimmen, aber ich persönlich würde diesen Weg nicht gehen - ein Verbindungspool (a) ist wirklich nicht schwer zu schreiben, (b) bildet einen Schlüsselteil Ihres Systems, den Sie wahrscheinlich verstehen müssen und anpassen.
Auch Apache-Lizenzierung funktioniert Wunder für fast alle Arten von Projekten. –