Ansicht umschalten
Avatar von O/4
  • O/4

mehr als 1000 Beiträge seit 27.11.2003

Performance

Man muss schon etwas Durchsatz haben, damit die Performance des Logsystems überhaupt am Horizont auftaucht. Chronicle-Logger nennt "trading systems"*, was ich mal als "Internet Werbeplatform" übersetzt, und ja, da geht es schon um seehr viele Transaktionen pro Sekunde. Auch google und amazon haben gewiss viel Traffic.

Aber:

Today most programs require the logging of large amounts of data ...

ist natürlich totaler Quatsch. Denn "most programs" (in der Java Welt) sind kleine bis mittelgroße Fachanwendungen. Und selbst große Fachanwendungen haben kaum mehr als ein paar tausend Benutzer. Da ist die Performance des Logsystems ... egal.

Überhaupt ist der Performancekiller #1: Index auf DB Spalte fehlt. Nach meiner Erfahrung erschlägt das so 80% aller Performanceproblem. Dann kommt auf Platz 2: Irre Loops die kostspielige Operation sinnlos 100.000 Mal wiederholen oder riesiege Objektbäume ebenso sinnlos abgrasen.

Dann kommt erst mal lange nix.

Und der Rest im einstelligen Prozenbereich sind verschiedene Problemchen, inklussive kaputter Hardware.

Wenn man das Frontend dazunimmt, und das heißt in dieser Welt überwiegend Webfrontend, dann kann natürlich eine JS Library Probleme machen, oder deren Einsatz. Aber streng genommen sind wir damit nicht mehr in der Java Welt, sondern auf einem Trabanten.

Zusammengefasst: Wenn jemand außerhalb des High-Perfomance Bereichs (s.o.) von "Performanceoptimierung" redet, ohne das es ein konkretes Problem gibt, dann ist das mMn bloß Wichtigtuerei.

Nichts gegen den Artikel @Hendrik Ebbers, die Zahlen sind totzdem ganz interessant und Chronicle-Logger kannte ich noch nicht. Dank dafür!

Allerdings ist wegen

At the moment, Chronicle Logger only supports binary logs ...

der Durchsatz auch nicht mehr ganz so beeindruckend. Vermutlich frisst die Datumsformatierung des Zeitstempels die meißte Performance, und wenn ich an dieser Stelle einfach ein long raushaue bin ich halt schneller. Nur lesen kann man es dann nicht mehr unbedingt. Aber gut, das formatieren des Logs in einen anderen, unabhängigen Prozess auszulagern ist ein prima Ansatz, falls ich es doch einmal erlebe, dass das Logsystem die Perfomrance killt. Dann werde ich an diesen Tag denken, eine Kerze stifen und Abbitte leisten.

O/4

*) https://github.com/OpenHFT/Chronicle-Logger#about

Bewerten
- +
Ansicht umschalten