pgoetz: Seriazible

Beitrag lesen

Guten Morgen,

[...]
Wie ich aber von meinen Kommilionen gesehen hatte, dass sie Ihre Projekte so gelöst hatten, dass manche eine statische Klasse hatten, um eine Datenbankverbindung aufzubauen. Manche hatten es so gelöst, dass bei einem Login eine Datenbankverbindung aufgebaut wird und erst beim Login wieder abgebaut. Das letztere hört sich nichtmal so schlecht an, wäre das aber dennoch humbuk?

Zum Rest wurde ja schon was gesagt, aber beim Thema Datenbankverbindungen muss ich noch kurz einhaken. In einer echten Anwendung führt an einem Connection Pool kein Weg vorbei. Eine Lösung mit Connection per User skaliert nicht. Mein Kollege hatte das bei einem Kunden, der mit seinem direkten Konkurrenten fusioniert ist. Eine Webanwendung sollte jetzt von allen bestehenden und den "neuen" Filialen verwendet werden, und hier war auch jeder "Session" eine Connection zugeordnet. Die Admins waren ein wenig überrascht, als aus ~400 Connections plötzlich ~800 wurden. Und eine Datenbankverbindung wird ja in der Regel im Vergleich zur restlichen Geschäftslogik nur kurz benötigt und kann dann zurückgegeben werden an den Pool. Die Unsinnigkeit der Lösung mit *einer* Verbindung in einer statischen Klasse kommentiere ich nicht extra. ;)
Was man allerdings nicht machen sollte, ist eine eigene Implementierung eines Connection Pools. Es gibt gute und funktionierende Pools, die man verwenden kann.

Schöne Grüße,

Peter