top of page

Performance Engineering Success Story

Der Fortschritt bei den digitalen Technologien, der u.a. zu einer weltweiten Vernetzung von Datenströmen geführt hat, und es den Nutzern ermöglicht, fast von überall online Daten abzurufen oder zu generieren, stellt auch besondere Anforderungen an die Robustheit und Lastverträglichkeit der datenverarbeitenden Systeme.


Die Systeme müssen vorbereitet sein auf viele, gleichzeitige Aufrufe, mit möglichst kurzen Antwortzeiten, der Datenfluss darf trotz einer hohen Last bis hin zu noch größeren Lastspitzen nicht dazu führen, dass Systeme ausfallen.

Im Zuge dessen hat das sog. „Performance Engineering“, also die ingenieurmäßige Auseinandersetzung mit dem Verhalten von Systemen unter


Last- und Performance-Aspekten, eine noch stärkere Bedeutung bekommen.

Der Einsatz von Performance-Engineering-Techniken ist aber nicht nur sinnvoll im stefig wachsenden Online-Segment, sondern auch bei Massendaten-verarbeitenden Firmen. Vor allem die Aussicht auf steigende Geschäftszahlen - und seien es nur selten auftretende Lastspitzen bei besonderen Geschehnissen - macht eine besondere Fokussierung auf die Fähigkeit der Systeme, auch bei wachsenden Businesstransaktionen performant und zuverlässig zu arbeiten, unabdingbar.


Kunden erwarten eine stabile und zuverlässige Plattform. Die steigende Anzahl von Wertpapier-Transaktionen, die Gewinnung neuer Kunden und das Angebot neuer Services im Wertpapiergeschäft führte konsequenterweise auch bei Deutschlands marktführendem Dienstleister in der Wertpapierabwicklung, der Deutsche WertpapierService Bank AG, kurz dwpbank, dazu, das Thema Performance-Engineering mit der erforderlichen Disziplin und Methodik noch stärker in den Testprozess zu integrieren.


Besondere Marktereignisse, die im Wertpapierhandel in der Vergangenheit zu großen Lastspitzen führten, sollten speziell für die nachfolgende Analyse der Auswirkungen auf die Systeme, besser noch während des akuten Geschehens, also Real-Time, verfolgt und ausgewertet werden können. Ein Team aus erfahrenen Entwicklern, Testern und Spezialisten wurde aufgestellt, um das

Performance Engineering in der Bank zu manifestieren.


Integration in die Prozesse


Die erste Phase umfasste die Integration des Performance Engineerings in die Prozesse der Bank, regulatorisch als auch im betrieblichen Ablauf, sowie die Etablierung des Mindsets für die Notwendigkeit und die Vorteile dieser Disziplin, die natürlich zeitlichen als auch monetären Aufwand für die Organisation bedeutete. Für die praktische Umsetzung wurde auf die klassischen Elemente des Performance Engineerings zurückgegriffen:

  • Implementierung von Simulationen, sog. Testtreibern, um gezielt und methodisch Last für die Systeme zu erzeugen

  • Aufbau einer Systemplattform, die die Implementierung und Ausführung der Testtreiber ermöglicht und nicht nur vom Performance Engineering Team nutzbar ist, sondern in der Breite der IT-Entwicklungsmannschaft

  • Einsatz eines Monitoring Tools, um das Verhalten der Systeme transparent zu machen und zu analysieren


Als Tool zur Implementierung der Testtreiber entschied sich das Team für die im Markt etablierte Open-Source-Software „Gatling“. „Gatling“ ermöglicht es, realistische Lastszenarien zu simulieren und so die Anwendungen verschiedenen Belastungen auszusetzen. Zur Realisierung und Ausführung der Testtreiber wurde das sog. Testlabor aufgebaut, eine Systemplattform mit Windows-Servern zur Entwicklung der Testtreiber und Unix-Server, die die Ausführung der Testtreiber und Verteilung der Last an die angebundenen Systeme übernehmen.


Beim Monitoring-Tool fiel die Wahl auf „Dynatrace“ , ein Marktführer-Produkt in dem Segment. Mit den fortschrittlichen Analysemöglichkeiten von Dynatrace sind Einblicke in die Systeme in Echtzeit möglich, je nach eingesetzter Technologie sogar bis auf Code-Ebene der Systeme.


Performance Engineering In der Praxis


Die Kombination von Gatling und Dynatrace erwies sich als äußerst effekfiv. Die mittels Dynatrace durchgeführten Echtzeit-Analysen der mit Gatling ausgeführten Performance-Tests halfen, Schwachstellen im Code und Engpässe bereits in frühen Entwicklungsphasen, man spricht hier auch von Shift-Left, zu erkennen. Durch die kontinuierliche Überwachung der Anwendungen durch Dynatrace auch im täglichen Betrieb, konnte die Serverauslastung weiter optimiert werden, immer neue Potenziale zur Optimierung von Antwortzeiten wurden identifiziert.


Das Benutzerfeedback und das kontinuierliche Monitoring der Transaktionen zeigen, dass die Anwendungen nun viel Ressourcen-optimierter laufen. Bei Weiter- und Neuentwicklungen wird bereits frühzeitig, dem Shift-Left-Prinzip folgend, dieses Technikpaket eingesetzt, damit Bottlenecks oder Architekturprobleme möglichst schon in der Entwicklung erkannt werden können, um sie so am kosteneffizientesten zu beheben. Performance Engineering generiert einen entscheidenden Mehrwert. Auch die Betriebskosten konnten so bei einigen Anwendungen gesenkt werden, da die optimierten Systeme weniger Ressourcen benötigen.


Diese Erfolgsgeschichte zeigt, dass die Integration von Performance Engineering nicht nur zu einer effektiven Identifizierung und Beseitigung von Leistungsproblemen führt, sondern auch den gesamten Entwicklungsprozess optimiert. Unser Engagement für exzellente Leistung, zusammen mit unserem externen Partner Performetriks, hat nicht nur unsere aktuellen Anwendungen optimiert, sondern wird auch die Abwicklung unseres zukünftigen Dienstleistungs- und Serviceangebotes performancetechnisch bestmöglich absichern.


Lessons learned


1. Monitoring und Tracing der Transaktionen, um Engpässe aufzudecken

2. Lastmodelle sollten regelmäßig aktualisiert werden

3. Performance Engineering ist ein fortlaufender Prozess

4. Wiederverwendbares Framework hilft bei der Entwicklung der Testtreiber

5. Performance Checks der Anwendungen im Betrieb

6. Jeder Change muss auf Performance Relevanz untersucht werden

7. Der Erfolg des Performance Engineerings ist dabei die Grundlage für die breite Akzeptanz des äußerst lohnenswerten Mehraufwandes im Unternehmen auf allen Ebenen.


Werkzeuge


  • Gatling open source und Gatling Enterprise

  • Dynatrace auf Mainframe, Linux, Windows, Kubernetes

  • Git und IntelliJ

  • Web Developer Tools


Wir bedanken uns bei Thomas Lingenfelder und seinem Performance Engineering Team für die erfolgreiche Zusammenarbeit in den letzten drei Jahren und wünschen der Deutschen WertpapierService Bank AG viel Erfolg sowie hervorragende Performance!



Success Story in English

The continuation of digital technologies, which has led, among other things, to a worldwide networking of data streams and enabling users to retrieve or generate data online from almost anywhere, also places unique demands on the robustness and load compatibility of data processing systems. The systems must be prepared for many of the same calls, with the shortest possible response times, and the data flow must not lead to systems failure despite a high load up to even greater load peaks.


In the course of this, so-called "performance engineering," i.e., the engineering of systems' behavior under load and performance aspects, has become even more critical.


Performance engineering techniques are helpful in the steeply growing online segment and mass data processing companies and institutions. Above all, the prospect of rising business figures - even if they rarely occur load peaks in the event of special events - makes a particular focus on the ability of the systems to work efficiently and reliably, even with growing business transactions, indispensable. Customers expect a stable and reliable platform form.


The increasing number of securities transactions, the acquisition of new customers, and the offer of new services in the securities business consequently led Germany's leading service provider in securities settlement, Deutsche WertpapierService Bank AG, dwpbank, to integrate performance engineering even more closely into the test process with the required discipline and methodology.


Market events that led to significant load peaks in securities trading in the past should be able to be tracked and evaluated in real-time, especially for the subsequent analysis of the effects on the systems, better yet, during the acute event, i.e., real-time. A few years ago, dwpbank established a team of experienced developers, testers, and specialists to manage the bank's performance engineering.


Step 1 - Performance Engineering Framework


The first phase included integrating performance engineering into the bank's regulatory and operational processes and establishing the mindset for the necessity and advantages of this discipline, which, of course, required time and monetary effort for the organization.

We used elements of performance engineering, such as

  • Implementation of simulations, so-called test drivers, to generate load for the systems in a targeted and systematic manner

  • Design of a test labor that allows the implementation and execution of the test drivers and is not only usable by the performance engineering team but in the breadth of the IT development team

  • Use of a monitoring tool to make the behavior of the systems transparent and analyze


The team opted for the market-established open-source software "Gatling" as a tool for implementing the test drivers. "Gatling" makes it possible to simulate realistic load scenarios and thus expose the applications to various loads. For the realization and execution of the test drivers, the so-called test lab was set up, a system platform form with Windows servers for the development of the test drivers and Unix servers, which take over the execution of the test drivers and distribution of the load to the connected systems.


For the monitoring tool, Dynatrace, a market leader product in the segment, was chosen. With Dynatrace's continuous analysis capabilities, real-time insights into the systems are possible, depending on the technology used, even up to the code level of the systems.


Step 2 - Performance Engineering Process Integration


The combination of Gatling and Dynatrace proved to be highly effective. The real-time analyses of the performance tests carried out by Dynatrace and Gatling helped identify weaknesses in the code and bottlenecks already in early development phases, also referred to as shift left.


Through Dynatrace's continuous monitoring of the applications, as in daily operation, the server utilization could be further optimized, and new potentials for optimizing response times were identified. The user feedback and the Continuous monitoring of the transactions show that the applications are now much more sustainable.


In the case of further and new developments, this technical package is used early on, following the shift-left principle, so that bottlenecks or architectural problems can be detected as early as possible in development and remedied most cost-effectively.


Step 3 - Performance Engineering as a Value


Since performance engineering is a fundamental part of all development, testing, and operational activities, the operating costs were reduced, as the optimized systems require fewer resources. This success story shows that the integration of performance engineering effectively identifies performance problems and simplifies the entire development process. Our commitment to excellent performance, together with our external partner Performetriks, has optimized our current applications and will secure the processing of our future services and service offerings in the best possible way.


Lessons learned


1. Monitoring and tracing of transactions to detect bottlenecks.

2. Update Load models regularly.

3. Performance engineering is an ongoing process.

4. A reusable framework helps in the development of the Test driver.

5. Shift Performance Engineering to production.

6. Review changes for performance risks.

7. Performance engineering helps to build robust and sustainable services.


Tools


  • Gatling open source and Gatling Enterprise

  • Dynatrace Observability Mainframe, Linux, Windows, Kubernetes

  • Git und IntelliJ

  • Web Developer Tools


We want to thank Thomas Lingenfelder and his Performance Engineering Team for the successful cooperation over the past three years and wish Deutsche WertpapierService Bank AG every success and excellent performance!


Comments


bottom of page