Object Pool

Ein Object Pool ist eine Sammlung von vorinstanziierten Objekten, die wiederverwendet werden.

In Jakarta EE nutzt @Stateless einen Pool von Bean-Instanzen.

I. Wofür?


Statt für jeden Request eine neue Bean zu erstellen, hält der Container N Instanzen bereit und reicht sie bei Bedarf raus.

II. Visualisierung


HelloBean-Pool:
  ┌─────┐ ┌─────┐ ┌─────┐
  │ B1  │ │ B2  │ │ B3  │ ... (alle gleichwertig)
  └─────┘ └─────┘ └─────┘
     ↑       ↑
  Thread1  Thread2 (parallel, keine Wartezeit)

III. Konsequenz für mich