Die meisten von uns haben schon einmal davon geträumt, fliegen zu können. Und wie sich herausstellt, gilt dies auch für die Evolution. Es wurde wiederholt nachgewiesen, dass die Fähigkeit zu fliegen für eine Vielzahl von Tieren von großem Nutzen ist – sei es, um Raubtieren auszuweichen, effizienter nach Nahrung zu suchen oder weite Entfernungen zu überwinden. Tatsächlich so sehr und so häufig, dass die Evolution immer wieder zu einem Weg kommt, das Ziel des Fliegens zu erreichen. Heute kennen wir drei unterschiedliche Tiergruppen, die unabhängig voneinander die Fähigkeit zum Fliegen entwickelt haben: Insekten, Vögel und Säugetiere (Fledermäuse). Jede dieser drei Gruppen ist einem anderen Entwicklungsweg gefolgt, der zum Fliegen geführt hat. Die aktuelle Form des Fliegens ist ein Spiegelbild der ursprünglichen Formen, die sie vor dem Fliegen besaßen. Denken Sie an Insekten: Die Vorfahren der Insekten hatten äußere Exoskelette, die die Eigenschaft hatten, eine geringe Dichte aufzuweisen und laminiert zu sein, was zu unterschiedlichen Zugfestigkeiten entlang verschiedener Dimensionen führte. Die Evolution der Insekten hin zum Fliegen erfolgte daher mithilfe verformbarer Flügel – ein Ansatz, der sich die Tatsache zunutze machte, dass Bausteine mit geringer Dichte und variabler Zugfestigkeit zur Verfügung standen. Bei Vögeln hingegen war die Entwicklung der Federn die entscheidende „Technologie“ auf dem Weg zum Fliegen. In diesem Fall waren die Federn ein glücklicher Zufall, der durch die Bedürfnisse einer Gruppe warmblütiger Dinosaurier bedingt war, die ein fellartiges Material zur Wärmespeicherung brauchten. Erst später stellte sich heraus, dass die Federn eine glückliche Fügung für die Fähigkeit zum Fliegen waren. Fledermäuse schließlich sind die jüngste Gruppe, die die Flugfähigkeit entwickelt hat. Sie verwenden einen Ansatz, der auf der inkrementellen Evolution aus gleitenden Säugetieren beruht, profitieren aber noch nicht von den Vorteilen äonenalter evolutionärer Anpassung.
Eine interessante und bemerkenswerte Ergänzung zu dieser Geschichte ist die Beobachtung, dass der Mensch, als er schließlich mithilfe von Maschinen das Fliegen in der Praxis ermöglichte, eine Reihe völlig anderer Ansätze anwandte – entweder leichtere als Lufttransportmittel oder schnell bewegliche Tragflächenprofile, die von Benzinmotoren angetrieben wurden.
Aus evolutionärer Sicht sind die Wege, die die Anwendungsbereitstellung in den letzten 20 Jahren eingeschlagen hat, auch eine Geschichte konvergenter Evolution. Genauer gesagt wurden in diesen Jahren zahlreiche Bereitstellungstechnologien entwickelt, die - im Nachhinein betrachtet - allesamt die ersten, ersten Evolutionsschritte in Richtung dessen waren, was heute zum Anwendungsvorsprung wird.
Der Vorläufer vieler dieser ursprünglichen Technologien waren die Content Delivery Networks (CDNs). Der Grund für diese Technologie - ihre „evolutionäre Nische“ sozusagen - war die Notwendigkeit, einer beträchtlichen Zahl von Verbraucherkunden große Mengen relativ statischer Daten, typischerweise große Bilder sowie Audio- und Video-Streams, zu übermitteln. Die Lösung bestand darin, zwischengespeicherte Kopien der großen Datendateien an mehreren geografisch verteilten Standorten näher an den Client-Geräten zu platzieren. Durch diesen Ansatz konnte die Arbeitslast bei der Bereitstellung sowohl hinsichtlich der Rechenleistung als auch der Bandbreite von einem einzigen zentralen Rechenzentrum weg verteilt werden, während gleichzeitig eine geringere und besser vorhersehbare Latenz erreicht wurde.
Heute, da Anwendungen weiterentwickelt wurden und eng in unseren Alltag integriert sind, müssen Sie die Latenz reduzieren und mehr Bandbreite bereitstellen, um die Anwendungserfahrung Ihrer Kunden zu verbessern. Die Spielregeln haben sich jedoch grundlegend verändert und weiterentwickelt. Wie Klima und Geografie in der Natur kontinuierlich Anpassungen erfordern, zwingen die veränderten Anforderungen an die Anwendungsauslieferung zu neuen Lösungsansätzen. Moderne Anforderungen an die Anwendungsauslieferung gehen deutlich über das einfache CDN-Szenario hinaus. Verfeinerte Anwendungsfälle müssen heute weit mehr leisten als die einfache Bereitstellung statischer Inhalte; auch Rechenleistung und Interaktivität sind gefordert. Videokonferenzen und elektronischer Handel sind Beispiele für Anwendungen mit höheren Ansprüchen. Der allgemeine Trend hin zu Single Page Applications (SPA), bei denen Anwendungen aus dem Zusammenspiel verschiedener Webservices bestehen, verlangt nach einer stabileren Verteilung von Ressourcen als nur einfache Speicherung, um eine überzeugende Nutzererfahrung zu gewährleisten. Mit der Entwicklung dieser neuen Anwendungsfälle beobachten wir, wie sich etablierte Marktlösungen angleichen und anpassen, um besser in diese neue und lukrative „evolutionäre Nische“ zu passen – das technologische Pendant zur „konvergenten Evolution“.
Die erste dieser bereits vorhandenen Lösungen sind die genannten CDNs. Ihre bisherige Stärke liegt in der umfangreichen Infrastruktur zahlreicher CDN-Knoten; ihr weiterer Weg ist, diese Knoten von rein cacheorientiertem Speicher zu einem ausgewogenen Mix aus verschiedenen Speichertechnologien – Dateien, Datenbanken, Objektspeicher – mit Rechenressourcen auszubauen, die direkt auf diesen Speicher zugreifen können.
Die zweiten auf dem Markt etablierten Lösungen sind die öffentlichen Cloud-Anbieter. Ihre Stärke liegt im leistungsfähigen Ökosystem aus Rechenleistung, Speicher und Bandbreite sowie den flexiblen Verbrauchsmodellen für diese Ressourcen. AWS bietet zum Beispiel verschiedene Datenbanktechnologien, Rechenleistung sowohl serverbasiert als auch serverlos an, stellt umfassende Technologien für Identitäts- und Authentifizierungsmanagement bereit und unterstützt Sie mit vielfältigen Zusatzdiensten wie Protokollierung, Berichterstattung, Visualisierung und Datenmodellierung. Sie besitzen jedoch nicht so viele Präsenzpunkte wie etablierte CDN-Anbieter und erreichen daher nicht die gleiche Verteilungsbreite.
Am anderen Ende der Präsenzpunktskala stehen die Mobilfunkanbieter (Mobile Service Provider, MSPs), insbesondere bei der Einführung ihrer 5G-Infrastrukturen. Die großen MSPs planen Zehntausende mobile Zugangspunkte, von denen jeder einen Einstiegspunkt in das Kernnetz darstellt. Zusätzlich zur „Stärke“ der Verteilung und Skalierung verfügen sie an diesen Zugriffspunkten über Rechenkapazität und eine gewisse begrenzte Speicherkapazität. Bis vor Kurzem war der Umfang der Rechen- und Speicherkapazität jedoch begrenzt, um sich auf die Infrastrukturanforderungen der MSPs selbst konzentrieren zu können. Die „Lücke“, die sie schließen müssen, besteht daher in der Migration zu einem Computing-Paradigma, das die Computing-Infrastruktur für externe Anwendungen zugänglich macht und diese durch zusätzliche Speicherkapazitäten erweitert.
Die Reise wurde lediglich als ein natürlicher, schrittweiser Evolutionsprozess skizziert. Manchmal kommt es jedoch zu evolutionären „Game Changern “ [1] – Ereignissen, die die Evolution unterbrechen und eine Neubewertung des linearen Verlaufs erfordern. Für den Menschen war die Entwicklung des Fliegens eine große Hilfe. Die Entwicklung von Systemen, die schnell große Energiemengen liefern können (z. B. benzinbetriebene Motoren), gepaart mit Materialien und Technologien zur Herstellung von starken, leichten Legierungen, ermöglichte es uns Menschen, uns neu vorzustellen, wie die Herausforderung des Fliegens angegangen werden könnte. Wir konnten damit die Spielregeln in Bezug auf die Entwicklung des Fliegens in der Natur ändern.
Wenn man diese Geschichte auf das Edge-Konzept bezieht, hat sich die Anwendungsbereitstellungserzählung bisher auf die Auslagerung von Arbeit auf der „Serverseite“ konzentriert, d. h. des Teils der Bereitstellungskette, der mit dem Server beginnt, der eine Anforderung empfängt. Insbesondere aufgrund der „evolutionären Prädisposition“ der bereits vorhandenen Lösungen (bei denen der Wert in der Entlastung des Anwendungsservers lag) lag der Schwerpunkt implizit auf der Auslagerung und Verteilung der Berechnung und Inhaltsbereitstellung als Reaktion auf die Anfrage eines „Client“-Kunden.
Bedenken wir jedoch, was passiert, wenn wir diese geografisch verteilten Präsenzpunkte nicht nur als Rechenknoten und Caches zur Entlastung des Servers – „Anwendungs-Proxys“ – betrachten, sondern zusätzlich als Kontrollpunkte, die den eingehenden Clientanforderungen die gleiche Aufmerksamkeit schenken und diese Anforderungen auf die für die Anwendungsanforderungen geeignete Infrastruktur und Rechen-/Cache-Knoten abbilden. Beispielsweise kann eine latenztolerante, aber bandbreitenintensive Anwendung wie die Cloud-Dateisicherung anders geroutet werden als eine latenzempfindliche Anwendung mit geringer Bandbreite wie Online-Gaming. Bankanwendungen, die eine zentrale Datenclearingstelle benötigen, können an ein zentrales Rechenzentrum weitergeleitet werden. Dieses Konzept, das ich als „Anwendungs-Orchestrator“ betrachte, ergibt sich von selbst, wenn man sich den Edge nicht als etwas vorstellt, das den Server lediglich entlastet, sondern als ein Element, dessen Rolle darin besteht, als Auffahrt zur allgemeinen Server-/Zugriffsknotenumgebung zu dienen.
So wie der Mensch es nicht durch einen mechanisierten, vogelähnlichen Ansatz (da Vincis berühmter „Ornithopter“) geschafft hat, sondern indem er darüber nachdachte, wie er die am besten geeigneten verfügbaren Technologien – Tragflächen in Verbindung mit Benzinmotoren – besser nutzen kann, so sollten wir auch darüber nachdenken, wie die Anwendungsinfrastruktur mit dem Aufkommen eines allgegenwärtigen, verteilten und servicereichen Edge neu konzipiert werden kann. Wenn die Leistungsfähigkeit dieser neuen Fähigkeit immer deutlicher und besser nutzbar wird, werden Anwendungseigentümer und -betreiber den nächsten Schritt in der Anwendungsentwicklung unternehmen. Das daraus resultierende „bahnbrechende“ Ereignis – die disruptive Entwicklung des Edge von einem bloßen Proxy für den Anwendungsserver oder einem Anwendungscache auf Steroiden zu einem vollwertigen Anwendungsorchestrator – wird dem Anwendungsökosystem eine Explosion neuer Möglichkeiten eröffnen, die Thema zukünftiger Artikel sein werden.
Ich möchte einen Ausblick auf diesen Weg geben und eine Vision davon vermitteln, wie die Nutzung der Rolle des Edge als Anwendungsorchestrator eine stärker deklarative und absichtsgesteuerte Spezifikation des beabsichtigten Verhaltens jeder Anwendung ermöglicht und so sowohl die Infrastruktur der Anwendung als auch das Kundenerlebnis optimiert. Beispielsweise kann eine Anwendung, die möglicherweise Augmented-Reality-Technologie verwendet, eine Richtlinie festlegen, die Latenz und Bandbreite priorisiert, während eine Finanz-Anwendung Zuverlässigkeit oder Zentralisierung priorisiert und eine andere IoT-Anwendung für Verbraucher sich auf das OpEx-Management konzentriert. Im weiteren Sinne: Wenn man eine Denkweise übernimmt, die die Rolle des Edge erweitert und ihn als Anwendungsorchestrator nutzt, wird der Edge auch zum logischen Ort für die Implementierung von Sicherheitsrichtlinien und Transparenz. Damit erfüllt sich ein weiterer Traum vieler Anwendungsbesitzer: das Ziel infrastrukturagnostischer Anwendungskontrollen.
[1] Die Entwicklung des sauerstoffbasierten Stoffwechsels ist ein gutes Beispiel, aber diese Geschichte muss ich mir für ein anderes Mal aufheben.