© Excellent backgrounds/Shutterstock.com
Einführung in das Java Temporary Caching API

JCache on Board?


Seit März 2014 ist das lang erwartete Release des Java Temporary Caching API (JSR-107) verfügbar. Die finale Version hatte es durch Verzögerungen zwar nicht mehr in die Java Enterprise Edition 7 geschafft, doch zeigen aktuelle Votings in der Oracle-Community JCache als heißen Kandidaten für Java EE 8. Die Technologie landete nach JSON-B und vereinfachter Security auf Platz 3 im Ranking der gewünschten Features [1]. Anlass genug, einen genaueren Blick auf den aktuellen Stand des JSR-107 zu werfen – insbesondere auch in Hinblick auf bereits existierende Caching-Lösungen im Java-Umfeld.

Da hat man sich aber Zeit gelassen! Mit einem Einstein-Zitat, „The only reason for time is so that everything doesn’t happen at once“, bekundete Oracle die Fertigstellung des Java Temporary Caching API [2]. Ein kurzer historischer Rückblick.

Der JSR-107

Der unter der Bezeichnung JCache laufende Specification Request wurde seit 2001 geplant. Nachdem sich im selben Jahr die Expertengruppe gegründet hatte, hörte man eine ganze Weile lang nichts mehr. Zwischenzeitlich wechselten noch die Specification Leads ein paar Male. Immerhin elf Jahre dauerte es, bis 2012 der „Early Draft“ präsentiert wurde. Im März 2014 war dann das Ziel erreicht und das Final Release wurde fertiggestellt [3].

Warum es so lange gedauert hat? Greg Luck, ehemals Terracotta, Inc. und langjähriger Specification Lead für diesen JSR, äußerte sich in einem Interview auf InfoQ [4]:

„Caching has traditionally been added to enterprise applications after they fail in production rather than planned in the architecture.“

Caches wurden also nicht von vornherein bei einer Anwendung eingeplant, sondern sind oft erst nachträglich hinzugefügt worden. Da sich diese Technologie zur Performancesteigerung bewährt hat und der Bedarf, große Datenmengen verarbeiten zu können, stetig gewachsen ist bzw. immer noch wächst, sind In-Memory-Lösungen nicht mehr reine Optimierungen. Anstatt Performancedefizite erst zu beheben, nachdem sie in der fertigen Anwendung für Probleme sorgen, ist es erforderlich, von Anfang an entsprechende Vorkehrungen in der Architektur zu treffen. Umso wichtiger ist daher ein standardisiertes Java API geworden. Da die ursprünglich geplante Veröffentlichung in Java EE 7 allerdings nicht mehr erreicht wurde, ist nun nach Fertigstellung des JSR zu erwarten, dass es als Teil von JEE 8 erscheint. Aktuell kann das API aber schon als Drop-in-Lösung verwendet werden. Dazu später noch mehr.

API und Features – Cache

...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang