Jax Finance rocked it!

Jax FInance Logo Das Thema FinTech und BigData nimmt in der IT-Finanzindustrie immer mehr an Fahrt auf. Passend zu unserem neuen Schwerpunktthema PMS 2.0 – der Weiterentwicklung des aixigo Portfolio Management Systems – habe ich beschlossen, das Thema auf der JAX Finance 2015 zu vertiefen.

Im Unterschied zur JAX Konferenz erhoffte ich mir diesmal nicht ein breites Spektrum an interessanten Technologie-Themen, sondern einen tief gehenden Fokus auf Themen, die in der Finanzbranche aus technischer Sicht Relevanz besitzen. Vorab gesagt – diese Erwartung wurde definitiv befriedigt, wenn nicht gar übertroffen. Mit dieser Erwartung war ich wohl auch nicht der Einzige (mehr dazu hier).

Kommend aus den JAX Finance Days der JAX, fand in diesem Jahr erstmals eine eigenständige Konferenz zu diesem Thema in London statt und begann direkt mit einer spannenden Key Note vom ING Chefarchitekt Henk Kolk (@henkkolk). Kolk berichtete von dem nun seit 5 Jahren laufenden Umbau der Bank IT auf Continuous Delivery – ein aus meiner Sicht höchst interessantes Thema, das ich bisher in unserem Umfeld nur in Ansätzen kenne, nicht aber aus einer Bank-weit umgesetzten Vorgehensweise.

MGR

Hoch spannend fand ich die Vorträge von Peter Lawrey (@PeterLawrey) und John Davies (@jtdavies) zum Thema „Low Latency“. Das Ziel von „Low Latency“-Anwendungen ist es, eine möglichst kurze Zeit zwischen einer eingehenden Anfrage zur zugehörigen Antwort zu garantieren – und das möglichst auch unter Last. Während Lawrey seinen Schwerpunkt darauf legte, den Code soweit zu optimieren, dass möglichst wenig Maschinen zum Einsatz kommen müssen, zeigten Davies Strategien, wie man eine möglichst effiziente Datenrepräsentation im Hauptspeicher mit Java Bordmitteln erreichen kann.

Davies zeigte wie eine sehr große Datenmenge in das RAM einer einzelnen Maschine gepackt werden kann, und durch eine physikalische Anordnung der Daten „Byte an Byte“ eine hohe Cache Coherence erreicht wird, wodurch die Hardware moderner CPU-Architekturen mit den L3, L2 und L1 Caches ideal ausgenutzt werden kann.

Beeindruckend waren die Ergebnisse zur Verarbeitung von SWIFT Transaktionen, die zuvor aufwändig mit Hilfe eines Hadoop Clusters aufbereitet wurden und nach Optimierung in ein paar Minuten auf einem Laptop in quasi-Echtzeit analysiert werden konnten! Dabei ist Davies Kernidee die interne Repräsentation der Daten als Byte-Array und eine Implementierung von Gettern und Settern mittels Binäroperationen. Davies stellte hier Performance-Steigerungen fest, die bis zu einem Faktor 280 reichten.

2015-04-28 11.32.51 (2)Schön für uns bei aixigo war die Bestätigung dieser Vorgehensweise, da wir im neuen PMS 2.0 ebenfalls ein ähnliches Vorgehen als Hauptfaktor zur Performance-Steigerung identifiziert haben und bereits in der Umsetzung sind.

Zur Analyse und Überwachung der Performance setzen wir ebenfalls auf Microbenchmarks mit dem JMH Framework des OpenJDK Projekts. In seinem Vortrag zum Thema „Java 8 Stream Performance“ stellte Maurice Naftalin (@mauricenaftalin) das Thema der soliden Performance Messung in den Vordergrund. Das JMH Framework ist für eine aussagekräftige Messung gut geeignet, da es JIT Warm-Up und GarbageCollection-Zyklen mit berücksichtigt und statistisch einbezieht.

Zu Guterletzt gab es dann noch eine inspirierende Key Note von Pieter Hintjens (@hintjens) – dem Gründer des Zero MQ Projekts – zum Thema „Living Projects“, in der er mit tiefgründigem Witz eine Parallele zwischen der Hardwareentwicklung eines aus seiner Sicht perfekten Bluetooth Headsets mit der Software Branche zog. Die Kernidee: Software sollte möglichst in kleinen, in sich abgeschlossenen Komponenten entwickelt werden, die möglichst einfach miteinander verbunden werden können. So entstehen schnell größere Systeme, die meist nicht vorab geplant werden, aber dennoch den größten Kundennutzen bieten.

Insgesamt waren es zwei spannende und interessante Tage, die auch persönliche Gespräche mit Speakern und Teilnehmern ermöglichten. An dieser Stelle meinen Dank an die Veranstalter (@jaxfinance) für die gute Organisation und die freundliche Betreuung während der Konferenz.

Marcus Gründler

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.