Serverlose Anwendungen auf Knative aufbauen

Book description

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Erforsche die Theorie und Praxis des Designs und der Entwicklung von serverlosen Anwendungen anhand von Beispielen aus dem Knative-Projekt. In diesem praktischen Leitfaden erfahren mittlere bis erfahrene Anwendungsentwickler und Teamleiter, wann und warum sie bei der Entwicklung von Microservices oder Anwendungen serverlose Plattformen einsetzen sollten. Auf dem Weg dorthin wirst du auch Warnzeichen entdecken, die auf Fälle hinweisen, in denen Serverless dir mehr Ärger als Freude bereiten könnte.

Der Autor Evan Anderson verfügt über 15 Jahre Erfahrung in der Entwicklung und Wartung von Anwendungen in der Cloud und über mehr als 6 Jahre Erfahrung mit serverlosen Plattformen im großen Maßstab und ist damit dein Wegweiser in die schnelle Welt der serverlosen Anwendungsentwicklung. Du wirst verstehen, warum Knative die am weitesten verbreitete Open-Source-Plattform für serverlose Anwendungen ist.

Mit diesem Buch wirst du:

  • lernen, was Serverless ist, wie es funktioniert und warum Teams es einsetzen
  • die Vorteile von Knative für Cloud Native Entwicklungsteams verstehen
  • Lerne, wie du eine serverlose Anwendung mit Knative entwickelst
  • Erkunde die Herausforderungen, die Serverless für das Debugging mit sich bringt, und die Tools, die dabei helfen können
  • Erfahre, warum sich ereignisgesteuerte Architekturen und Serverless Compute ergänzen, aber unterscheiden
  • Verstehe, wann ein serverloser Ansatz möglicherweise nicht das richtige Systemdesign ist

Table of contents

  1. Vorwort
    1. Für wen ist dieses Buch?
    2. Hintergrund
      1. Container
      2. Cloud-Provider
      3. Kubernetes und Cloud Native
      4. Cloud-gehosteter Serverless
    3. Wie dieses Buch organisiert ist
    4. In diesem Buch verwendete Konventionen
    5. Code-Beispiele verwenden
    6. O'Reilly Online Learning
    7. Wie du uns kontaktierst
    8. Danksagungen
  2. I. Die Theorie von Serverless
  3. 1. Was ist eigentlich Serverless?
    1. Warum nennt man es Serverless?
    2. Ein bisschen Terminologie
    3. Was ist eine "Einheit der Arbeit"?
      1. Verbindungen
      2. Anfragen
      3. Veranstaltungen
    4. Es geht nicht (nur) um die Waage
      1. Blau und Grün: Rollout, Rollback und Day-to-Day
      2. Creature Comforts: Undifferenziertes Heavy Lifting
      3. Creature Comforts: Inputs verwalten
      4. Creature Comforts: Prozesslebenszyklus verwalten
    5. Zusammenfassung
  4. 2. Von Grund auf neu entwerfen
    1. Aufbau für dieses Kapitel
    2. Eine Single-Page-App
      1. Bootstrapping einer React App
      2. Eine grundlegende Web-UI
      3. Unsere App verpacken
      4. In die Cloud auf deinem Laptop!
      5. Unter der Haube: Wie Anfragen gehandhabt werden
      6. Weitermachen beim Bauen
    3. Hinzufügen einer API
    4. API-Gateways und Zusammenstellung einer App
      1. Aufteilung einer API in Komponenten
      2. Erweitern einer Vollmacht
    5. Ergänzende Dienstleistungen
      1. Key-Value Speicherung
      2. Objektspeicherung
      3. Zeitgeber (Cron)
      4. Aufgaben-Warteschlangen
      5. Arbeitsabläufe
    6. Zusammenfassung
  5. 3. Unter der Haube: Knative
    1. Annahmen zur Infrastruktur
      1. Verwaltung von Hardware und Betriebssystemen
      2. Zeitplannungsprogramm und das Rechenzentrum als Computer
    2. Dienen
      1. Konzepte der Steuerungsebene
      2. Das Leben einer Anfrage
      3. Autoscaling-Regelkreis
      4. Vergleich mit AWS Lambda
    3. Vielseitigkeit
      1. Konzepte der Steuerungsebene
      2. Liefergarantien
      3. Das Leben einer Veranstaltung
      4. Ökosystem
      5. Vergleich mit Amazon SNS und anderen Cloud-Providern
      6. Vergleich mit RabbitMQ
      7. Vergleich mit Apache Kafka
      8. Vielseitigkeit Zusammenfassung
    4. Funktionen
    5. Zusammenfassung
  6. 4. Die Kräfte hinter Serverless
    1. Höchstgeschwindigkeit: Den Luftwiderstand reduzieren
      1. Kontinuierlich Wert schaffen
      2. Das (Geschäfts-)Rennen gewinnen
    2. Microbilling
      1. Ein Deal mit der Cloud
      2. Trübungen auf eigene Faust
      3. Was passiert, wenn du nicht läufst
    3. Die Gravitationskraft von Serverless
      1. Auswirkungen auf die Sprachen
      2. Auswirkungen auf Sandboxing
      3. Auswirkungen auf den Werkzeugbau
      4. Auswirkungen auf die Sicherheit
      5. Auswirkungen auf die Infrastruktur
    4. Zusammenfassung
  7. II. Entwerfen mit Serverless
  8. 5. Den Monolithen ausbauen
    1. Der Monolith nebenan
      1. Microservice Erweiterungspunkte
      2. Asynchrone Aufräumarbeiten und Erweiterung
      3. Extrahieren, Transformieren, Laden
    2. Das Würgefeigen-Muster
      1. Experimente
      2. Dunkler Start und Wegwerfarbeit
    3. Ein serverloser Monolith?
    4. Zusammenfassung
  9. 6. Mehr über Integration: Ereignisgesteuerte Architektur
    1. Ereignisse und Nachrichten
      1. Warum CloudEvents
      2. Ereignisse als API
      3. Was bedeutet "ereignisorientiert"?
    2. Ereignisverteilung
      1. Inhaltsbasiertes Routing im Vergleich zu Kanälen
      2. Interne und externe Ereignisse
      3. Bauen für die Erweiterung mit "Innerem Monolog"
    3. Workflow-Orchestrierung
      1. Langlebige Workflows, kurzlebige Rechenleistung
      2. Workflow als deklarative Manifeste
    4. Event Broadcast
      1. Was ist so kompliziert am Rundfunk?
      2. Übertragung in sich schnell bewegenden Systemen
    5. Aufgaben-Warteschlangen
      1. Merkmale der Aufgabenwarteschlange
      2. Skalierung in Zeit statt in Instanzen
    6. Zusammenfassung
  10. 7. Einen robusten inneren Monolog entwickeln
    1. Ambient Event Publishing
      1. Das Muster der aktiven Speicherung
      2. Ist deine Datenbank dein Monolog?
    2. Szenarien für innere Monologe
      1. Wichtige Ereignisse
      2. Arbeitsabläufe
      3. Innere Monologe gegen RPCs
      4. Sensible Daten und Anspruchsprüfungen
    3. Wie man einen inneren Monolog verwendet
      1. Den Monolithen erweitern: Workflow-Dekoration
      2. Ratschläge zum Streuen und Sammeln
      3. Erkennung von Account Hijacking
      4. Versionierte Ereignisse, nicht versionierter Code
    4. Auch Wolken haben Monologe
      1. Kubernetes: Nur ein Monolog
      2. Audit Log oder Mono-Log?
    5. Zusammenfassung
  11. 8. Zu viel des Guten ist keine gute Sache
    1. Verschiedene Arten von Arbeit in ein und derselben Instanz
    2. Arbeitseinheiten, die keine Beendigung signalisieren
    3. Protokoll-Fehlanpassung
    4. Unelastische Skalierung
    5. Instanzadressierbarkeit und Sharding
    6. Zusammenfassung
  12. III. Leben mit Serverless
  13. 9. Mit Lichtgeschwindigkeit fehlschlagen
    1. Meltdown
      1. Engstes Nadelöhr
      2. Rückkopplungsschleife
    2. Kaltstart, extra langsam
      1. Das Rennen um die Bereitschaft
      2. Vermeiden von Kaltstarts
    3. Vorhersagen sind schwer
    4. Loopback
    5. Hotspots skalieren nicht
      1. Diagramme und Brennpunkte
      2. Daten Größe
      3. Sperren
    6. Genau einmal ist schwer
    7. Zusammenfassung
  14. 10. Den Fall knacken: Whodunnit
    1. Log Aggregation
    2. Nachverfolgung
    3. Metriken
    4. Live-Tracing und Profiling
    5. APM-Agenten
    6. Zusammenfassung
  15. IV. Eine kurze Geschichte von Serverless
  16. 11. Eine kurze Geschichte von Serverless
    1. 35 Jahre Serverless
      1. inetd
      2. CGI
      3. Gespeicherte Prozeduren
      4. Heroku
      5. Google App Engine
      6. Cloud Foundry
      7. AWS Lambda
      8. Azure und dauerhafte Funktionen
      9. Knative und Cloud Run
      10. Cloudflare Workers und Netlify Kantenfunktionen
    2. Wie geht es weiter?
      1. AI
      2. Verteilt und die Kanten
      3. Jenseits von staatenlos
    3. Zusammenfassung
  17. Index
  18. Über den Autor

Product information

  • Title: Serverlose Anwendungen auf Knative aufbauen
  • Author(s): Evan Anderson
  • Release date: October 2024
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9798341607545