James Sutherland vom Java-Persistence-Performance-Blog hat ein paar Perfromancetests mit den Map-Implementierungen HashMap und Hashtable vorgenommen und Herausgefunden, dass der Hashtable schneller ist, als die HashMap. Den Testcode kann man herunterladen und ausprobieren. Ich habe das mal gemacht und konnte seine Testergebnisse tatsächlich nachvollziehen. Gedacht hätte ich das nicht, zumal ich seit Jahren reflexartig die HashMap verwende, wenn keine Synchronisierung notwendig ist. Gerade vor dem Hintergrund der Synchronisierung des Hashtable ist es verwunderlich, dass zwei Implementierungen, die nahezu das Gleiche machen, zu unterschiedlicher Performance geraten.
Die Messungen sind meiner Meinung nach aber nicht so bedeutsam, wie sie zunächst klingen, wenn der Performance-Hammer herausgeholt wird. Eine Anwendung, die optimiert werden muss, wird sich kaum schneller anfühlen, nur weil man die Implementierungen austauscht. Interessant ist das viel mehr für Stellen, an denen intensiver Gebrauch von der HashMap gemacht wird. Interessant finde ich das allemal. Das Performance-Thema zieht einen eben doch immer irgendwie.
via http://java-persistence-performance.blogspot.com/2010/12/what-is-faster-jvm-performance.html
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.