Microservices ist momentan ein vieldiskutiertes Thema in Unternehmen. Einige sind schon auf die Microservices migriert, andere bereiten sich grade auf diesen Schritt vor. Von der Migration auf die Microservices versprechen sich die Unternehmen eine schnellere Weiterentwicklung ihrer Anwendungen, mehr Flexibilität, mehr Leistungsfähigkeit und eine bessere Skalierbarkeit. Jedoch gibt es drei große Herausforderungen, mit denen sich jedes Unternehmen beim Umstieg auf die Microservices befassen muss.
Microservices sind für viele Unternehmen eine effiziente und lukrative Option im Bereich Software-Entwicklung. Doch die Migration dorthin bringt auch Probleme mit sich. Als Application-Performance-Experte nennt Gregor Keller, Sales Engineering Manager bei AppDynamics, die drei größten Herausforderungen, die täglich auf einen zukommen-
-
Was muss migriert werden?
Bevor eine Anwendung in individuelle Microservices aufgeteilt werden kann, muss der Umfang und die Architektur erfasst werden – und das ist kein Kinderspiel. Vor allem bei organisch gewachsenen Anwendungen ist die Dokumentation eher unzureichend und Monitoring-Tools können den Umfang auch nicht erfassen.
Für die Migration brauchen Unternehmen deswegen eine Lösung, die jede einzelne Komponente, jede einzelne Abhängigkeit und jeden einzelnen Aufruf von Drittanbieter-Ressourcen aufdeckt. Nur so kann die Basis für einen effektiven Migrationsplan erstellt werden.
-
Wie werden Performance-Einbußen vermieden?
Damit die Anwendung nach der Migration auf Microservices optimal weiterläuft, müssen IT-Verantwortliche in der Lage sein, aktuelle Performance-Metriken mit denen vor der Migration zu vergleichen. In der Praxis ist das komplizierter, da sich die Architektur der Anwendungsumgebung drastisch verändert hat und Monitoring-Tools die neue Umgebung nur bruchteilhaft abdecken.
Deswegen ist der genauere Blick auf das Ganze entscheidend. Es hat sich zwar die Architektur geändert, jedoch nicht die Abläufe. Wer Performance auf dieser Ebene erfasst, kann somit einen exakten Vorher-Nachher-Vergleich anstellen. So lässt sich gewährleisten, dass die Nutzererfahrung unter der Migration nicht leidet.
-
Wie wird die neue Microservices-Umgebung überwacht?
Früher ließen sich große, monolithische Anwendungen einfach mit zwei oder drei Monitoring-Tools überwachen. Doch durch die höhere Komplexität ist das bei Microservices nicht mehr möglich. Potenziell beruht jeder Service auf seinem eigenen Technology-Stack, nutzt seine eigene Datenbank und einen eigenen Hosting Provider. Deswegen kann es auch vorkommen, dass ein einzelner Microservice mehr Tools benötigt als ein einzelner Monolith. Außerdem wird das Monitoring von Microservices neue Herausforderungen, wie etwa die Kurzlebigkeit vieler Services, was den langfristigen Abgleich von Metriken erschwert, und die neuen Anforderungen an das Entwicklerteam.
Um den drei Herausforderungen zu trotzen, kommt es also auf ein gründliches und robustes Monitoring an. Es muss nicht nur gründlich arbeiten, sondern auch alle Geschäftstransaktionen zuverlässig erfassen. Ohne die Implementierung eines solchen Tools bringt die Migration auf Microservices herzlich wenig.
Dieser Beitrag basiert auf einer Pressemitteilung von AppDynamics.
Titelbild: iStock/Ridofranz