In meinem letzten Artikel zum Thema dWb+ beschrieb ich ein neues Feature der Lösung - nunmehr wende ich mich einer wichtigen nichtfunktionalen Anforderung zu
Ich habe in den letzten Wochen - nicht nur - wegen der diversen neuen Features, die bereits veröffentlicht wurden und sich noch in der Entwicklung befinden viele Eindrücke zur (gefühlten) Performance der Anwendung gewonnen.
Generell waren die Eindrücke eher negativ - besonders das Laden von Workspaces war für den Benutzer keine optimale Erfahrung: Nach Instantiierung des ersten Moduls schien die Anwendung lange zu pausieren, ehe die nächsten Module auf der Arbeitsfläche erschienen. Auch der Fortschrittsdialog wurde in dieser Zeit nicht aktualisiert.
Ich wollte dieses Problem lösen und installierte daher einige Messpunkte im Startablauf, die ein detailliertes Profiling erlauben sollten. Der Einbau und die anschließende Analyse benötigte knappe anderthalb Stunden - anschließend konnte ich die Ursache bereits so weit eingrenzen, dass ich in der Lage war, einen schnellen Workaround zu erstellen, der das Performancebottleneck für den Nutzer unsichtbar machte.
Nach weiteren Tests am nächsten Tag war klar, dass der initiale Verdacht korrekt war: Die verstärkte Nutzung von Reflection für die Erstellung der Parameter-Dialoge für Module, die keine dedizierte GUI mitbringen war die Wurzel allen Übels. Ich lagerte diese Funktionalität in Hintergrund-Threads aus und damit erscheint das Laden eines Workspace für den Nutzer flüssig.
Natürlich wurden alle Tests durchgeführt und bestätigten, dass durch diese Änderung keine bestehende Funktionalität beeinträchtigt wurden.
Keycloak, OTP, FIDO
11.06.2021
Ich berichtete neulich über die Installation und erste Tests von Keycloak. Nun bin ich tiefer eingetaucht und habe die diversen Möglichkeiten untersucht, die Authentifizierung mittels zweiten Faktors sicherer zu machen.
WeiterlesenAI und ML Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Hardware Java Jupyter JupyterBinder Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Präsentationen Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
Ein weiteres Self-Hosting-Experiment hat zu zwei neuen Diensten in meinem Docker-Zoo geführt...
WeiterlesenNach meinen Erfolgen mit einem TPM in der Version 1.2 zur Absicherung von SSH-Verbindungen wollte ich versuchen, seine Funktionalität in Java-Anwendungen zu integrieren...
Weiterlesenletzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2026 folgt hier gleich die nächste:
WeiterlesenManche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.