Christopher: Forum, Singleton, Datenbank

Beitrag lesen

Schoenen Sonntag allerseits,

Hintergrund:
ich programmiere derzeit fuer mich privat an einer Art Forum.
Das ganze laeuft uebers Web. Ich verwende hierfuer Java mit
Hilfe von einigen Frameworks (presentation layer: Struts,
business layer: Spring, persistence layer: Hibernate). Als
servlet container nutze ich Tomcat.

Anliegen:
Nun stelle ich mir die Frage, ob ich den Threadbaum (welcher
die rekursiv ausgelesen Eintraege enthaelt und in einer Hashtable
o.ae. abgelegt wird), als Singleton realisiere (das heisst die Klasse,
die die Hashtable zu Verfuegung stellt nur genau 1 Mal existiert) und
ich mir somit einen grossen Teil Datenbankzugriffe ersparen kann.
Wenn ein Benutzer einen neuen Beitrag anlegt, so landet dieser dann
zum einen in der Datenbank, und zum anderen wird er der Hashtable
hinzugefuegt. Die Eintraege koennte man beschraenken auf zB hundert
oder tausend (Die Benutzer sollen allerdings die Wahl haben, wieviele
Postings sie auf einmal sehen moechten. Das heisst, ich muesste dann
den groessten gemeinsamen Nenner als Anzahl der gecacheten Eintraege
nehmen.)
Ferner hiesse es, dass der Server staendig die aktuellen,
letzten Eintrage bereithielte, und diese nicht staendig neu geladen
werden muessten - was m.M.n. einen erheblichen Performanzgewinn
mit sich bringt.

Frage:
Was sagt ihr dazu hinsichtlich des Design und der Performanz?
Macht das Sinn oder gibt es evtl. bessere Moeglichkeiten..?

Vielleicht hat ja der eine oder andere hier auch bereits etwas
Erfahrung damit gemacht (nicht nur Java).
Waere schoen, wenn mir einer hierzu etwas sagen oder empfehlen koennte.

Besten Dank fuer eure Bemuehungen
Christopher