Unter der Haube von Apps läuft weiterhin “das Web”

clip_image002

Alle Smartphone-Nutzer kennen sie: kleine Icons, hinter denen oft praktische, unterhaltsame und auch mächtige Programme schlummern, die für Smartphones optimiert sind. Oft verbergen sich hinter diesen Apps aber nichts anderes als Webseiten, die für Smartphones beziehungsweise Tablets neu gestaltet wurden und eine optimierte Navigation für diese Geräte bieten. Die meisten Apps kommunizieren über dieselben APIs (oder HTTP-Services), über die auch Browser mit Inhalten versorgt werden. Apps gibt es nicht nur für Online-Banking und Social Networks, sondern auch für Online-Shops. Statistiken zeigen, dass Nutzer auf Mobilgeräten lieber via Apps auf ihren Lieblingsseiten surfen als über den integrierten Browser.

Werden die Wörter Mobile und Enterprise zusammen verwendet, denken viele sofort nur noch an Sicherheit und Mobile Device Management und vergessen dabei, dass sich die Apps ihrer Organisationen nicht an ihre Mitarbeiter sondern an ihre Endkunden richten – dieselben Kunden, die ihre Webseite besuchen, und die sich über MDM, MAM und andere Sicherheitsbedenken keine Gedanken machen.

Der Fokus von Organisationen, die mobile Anwendungen oder Apps für Endkunden ausliefern, ist derselbe wie bei der Auslieferung von Web-Inhalten: Verfügbarkeit, Sicherheit der Daten sowie Applikationen und Performance. Die meisten Apps sind nur Präsentations-Layer. Die Methoden, mit welchen die Daten ausgeliefert werden, basieren immer noch auf dem guten alten HTTP. Auch eine REST API bleibt eine per HTTP adressierte und ausgelieferte Methode.

Folglich unterliegen sowohl Apps für Endkunden als auch Apps für Unternehmen denselben Bedenken hinsichtlich Verfügbarkeit und Performance wie Web-Applikationen.

Selbstverständlich gibt es auch Unterschiede, insbesondere wenn man in Betracht zieht, dass Apps mit entfernten APIs über mindestens zwei verschiedene Netzwerke kommunizieren. Manchmal in einem Zeitraum von Stunden – oder Minuten. Mobilfunknetzwerke funktionieren zudem anders als WLAN-Netzwerke und verfügen über andere Leistungsprofile. Apps müssen nichtsdestotrotz in beiden Netzwerktypen funktionieren. Und auch für Endanwender gilt: Verzögerungen bei der Auslieferung sind inakzeptabel. Ein Ladebalken in einer App ist nicht wünschenswerter als ein Ladebalken in einer Web-Applikation. Die Perfomance ist immer wichtig, egal ob sich der Client auf einem Smartphone oder einem PC befindet.

Lorinda Brandon, Director of Solutions Strategy bei SmartBear Software, hat diesen Gedanken vor kurzem in einem ProgrammableWeb Artikel aufgegriffen, in dem sie ihre Zeit bei Glue zusammenfasst: „In seiner Rede über die “API-ification” des Web hat Steven Willmott die zunehmende Wichtigkeit von APIs im Allgemeinen und von funktionierenden APIs im Speziellen betont. Nun, da wir gegenseitig unseren APIs bei der Entwicklung von Applikationen zum Durchbruch verhelfen, greifen wir nicht nur auf Daten und Funktionen außerhalb unser eigenen Umgebungen zu; prinzipiell verbinden wir Systeme, die über diverse Cloud-Plattformen und Datenbanken verteilt sind. Heutzutage gibt es ein großes Bedürfnis nach einer genauen Überprüfung unserer Qualitätsstandards und Service Level Agreements.“

Tatsächlich gibt es dieses Bedürfnis, und im Konzept der Service Level Agreements kommt zum Ausdruck, wie Performance heute garantiert werden soll, obwohl wir nun weniger Spielraum auf dem Client haben als wir es in der Vergangenheit bei Browsern hatten. Web-Acceleration-Konzepte wie Client-seitiges Caching und Domain Sharding sind höchstwahrscheinlich keine effektiven und machbaren Lösungen, wenn eine native App das Ziel ist. Apps basieren meistens auf anderen Plattformen, SDKs und Frameworks.

Die Herausforderung liegt darin, die Auslieferung auf der Server-Seite zu optimieren und zu beschleunigen, also in dem Bereich, in dem die Anbieter Einfluss haben. Die Transformation von Inhalten und Caching-Strategien, intelligente Nutzung von Load-Balancing-Algorithmen und Skalierung sowie weitere, das Netzwerk betreffende Optimierungsmöglichkeiten sind zu diesem Zweck geeignet. Sie verbessern die Performance von APIs und die Auslieferung von Daten an Apps.

Bevor wir jedoch diesen Wandel angehen können, müssen wir klarstellen, dass Apps mehr als MDM, MAM und Security Policies bedeuten. Wir müssen erkennen, dass Apps, diese webbasierten Front-Ends, weiterhin dieselben Mechanismen für das Ausliefern von Daten wie die traditionellen Web-Applikationen nutzen. Deshalb müssen Apps dieselben Herausforderungen lösen - insbesondere hinsichtlich der Performance.