SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Weniger ist mehr.
Go serverless!
Simon Fleischer
Senior Softwareengineer
22.10.2019
Weniger ist mehr. Go serverless! Folie 2
Agenda
• Wenn das Team einen neuen Server braucht…
• Was bedeutet „serverless“?
• Serverless Services
• Serverless und DevOps
• Vorteile und Nachteile von serverless
• Architekturbeispiele
Weniger ist mehr. Go serverless! Folie 3
Wenn das Team
einen neuen
Server braucht…
Weniger ist mehr. Go serverless! Folie 4
Wenn das Team
einen neuen
Server braucht…
Weniger ist mehr. Go serverless! Folie 5
Wenn das Team
einen neuen
Server braucht…
Weniger ist mehr. Go serverless! Folie 6
Wenn das Team
einen neuen
Server braucht…
Weniger ist mehr. Go serverless! Folie 7
Währenddessen
im
Rechenzentrum
…
Weniger ist mehr. Go serverless! Folie 8
Wenn das Team
einen neuen
Server braucht…
Weniger ist mehr. Go serverless! Folie 9
Wenn das Team einen neuen Server braucht…
1. Der Verantwortliche wird gefragt
2. Gespräche mit Operations werden geführt (Größe, Standort, Betriebssystem…)
3. Formulare werden ausgefüllt
4. Passierschein 25b wird benötigt…
5. Server wird bestellt
6. …Warten…
7. …Warten…
8. Server wird eingerichtet und Zugangsdaten versendet
9. …
10.Entwicklungsteam bemerkt, dass benötigte Rechte fehlen…
11.…
Weniger ist mehr. Go serverless! Folie 10
Versuchen wir‘s mal ohne Server…
Was bedeutet also „serverless“?
Was können wir dagegen tun?
Weniger ist mehr. Go serverless! Folie 11
Hardware und OS
sind uns egal
Wir müssen und wollen davon
nichts wissen.
Server wird
„versteckt“
Wir arbeiten auf einer höheren
Abstraktionsebene.
Nutzung von
Diensten
Wir beziehen keine Hardware oder
VMs von internen oder externen
Dienstleistern, sondern Dienste.
TEAM – Toll, ein Anderer macht‘s!
Weniger ist mehr. Go serverless! Folie 12
Vergleich IaaS, PaaS und serverless
You manage Service Provider Managed
Networking
Storage
Serves
O/S
Virtualization
Middleware
Runtime
Data
Application
Customization; higher costs; slower time to value
On-Premise
Networking
Storage
Servers
O/S
Virtualization
Middleware
Runtime
Data
Application
IaaS
Networking
Storage
Serves
O/S
Virtualization
Middleware
Runtime
Data
Application
PaaS
Networking
Storage
Servers
O/S
Virtualization
Middleware
Runtime
Data
Application
Flexibility
Error tolerance
Scalability
Capacity planning
Functions
Business Logic
Serverless
Standardization; lower costs; faster time to value
Weniger ist mehr. Go serverless! Folie 13
Beispiele für serverless Services
• Funktionen
• Speicher
• Datenbanken
• Anwendungshosting
• Messaging
Weniger ist mehr. Go serverless! Folie 14
Funktionen
Beispielprodukte
• AWS Lambda
• Google Cloud Functions
• Azure Functions
Anwendungsfälle
• Funktion nimmt Währungsumrechnung vor (z.B.
über API Gateway als Webservice)
• Funktion generiert thumbnails
• Lambda reagiert auf AWS-Ereignisse und führt
Aktionen aus
Weniger ist mehr. Go serverless! Folie 15
Speicher
Beispielprodukte
• AWS S3
• Google Cloud Storage
• Azure Storage
Anwendungsfälle
• Hosting von statischen Webseiten
• Ablage von Dateien von "serverless" Applikationen
Weniger ist mehr. Go serverless! Folie 16
Datenbanken
Beispielprodukte
• AWS RDS
• Google Firestore
• Azure Cosmos DB
Anwendungsfälle
• Klassische relationale Datenbanken als Dienst
• NoSQL-Datenbanken
• Möglichkeit, ungenutzte Datenbanken
automatisiert "schlafen zu legen"
Weniger ist mehr. Go serverless! Folie 17
Anwendungshosting
Beispielprodukte
• AWS Elastic Beanstalk
• Google App Engine
• Azure App Service
Anwendungsfälle
• Betrieb von Applikationen "mit einem Klick" (z.B.
Spring Boot)
Weniger ist mehr. Go serverless! Folie 18
Messaging
Beispielprodukte
• AWS Simple Queue Service (SQS)
• Google Cloud Pub/Sub
• Azure Queue Storage
Anwendungsfälle
• Implementierung von Publisher / Subscriber
Pattern
• Lose Kopplung von Services
• Asynchrone Verarbeitung von Nachrichten
• Benachrichtigung bei Fehlern
Weniger ist mehr. Go serverless! Folie 19
You built it,
you run it!
Serverless und
DevOps
• Kein „Über den Zaun werfen“
• Verantwortung kann in einem
einzigen Team bleiben
• Kein spezielles "Ops-Wissen" im
Team nötig
Weniger ist mehr. Go serverless! Folie 20
Vorteile (1/2)
• Schnell verfügbar
• Hohe Verfügbarkeit
• Keine Engpässe bei kurzfristigen Lastspitzen (Bsp.: Beginn Kartenvorverkauf David Hasselhoff)
• Keine Wartung von Betriebssystem und Hardware nötig
• Weniger Monitoring nötig
• Kein Aufwand für Sicherheitsupdates des Betriebssystems und Middleware
• Rechtevergabe setzt an entscheidenden Punkten an
(z.B. Aufruf von Funktionen), nicht am Betriebssystem
• Backupkonzept kann leichtgewichtiger ausfallen und ist
einfach einzurichten
* Anm.: Das Konzert am 6.10. war nicht ausverkauft.
*
Weniger ist mehr. Go serverless! Folie 21
Vorteile (2/2)
• Zahlung nach Nutzung
• z.B. Funktionsaufrufe
• Keine ungenutzten, „sich langweilenden“ Ressourcen
• Kein ungenutzter Speicherplatz „auf Vorrat“
• Datenbank kann automatisch hoch- und heruntergefahren werden
• Oft kostenlose Kontingente verfügbar
(z.B. 1 Mio (!) Aufrufe von Lambda-Funktionen pro Monat)
• Der Kopf ist frei für das Wesentliche: Ihre Businesslogik
 Freiheit für Ihr Business!
Weniger ist mehr. Go serverless! Folie 22
Nachteile (1/2)
• Weniger Freiheitsgrade
• Erschwertes oder unmögliches Profiling, Debugging, Monitoring
• Ggf. ungeeignet für High-Performance-Anwendungen
(z.B. einmalig hohe Latenz, wenn Lambda initialisiert wird)
• Nicht auszuschließende (Sicherheits-) Probleme durch Multimandantennutzung
Weniger ist mehr. Go serverless! Folie 23
Nachteile (2/2)
• Erhöhtes Lock-In-Risiko
(Allerdings: Standardisierung von Cloud-Diensten wird derzeit vorangetrieben)
• Falsch gewählte Services und Architekturen können zu hohen Kosten führen
• Oftmals Umdenken bei Entwicklung nötig
Weniger ist mehr. Go serverless! Folie 24
Einfacher
Webservice auf
Basis von API
Gateway und
Lambda
AWS Cloud
API Gateway Lambda
REST - Client
Weniger ist mehr. Go serverless! Folie 25
Dynamische
Webseite auf
Spring Boot -
Basis
AWS Cloud
Elastic Beanstalk
Spring
Boot
Application
Benutzer
(Browser)
Route 53
Weniger ist mehr. Go serverless! Folie 26
Dynamische
Webseite
auf Basis von S3,
Lambda, API
Gateway und
RDS
AWS Cloud
S3
LambdaAPI Gateway DynamoDB
Statische Inhalte (HTML, CSS, Bilder…)
Dynamische Inhalte, abgerufen über AJAX
Benutzer
(Browser)
Weniger ist mehr. Go serverless! Folie 27
Wenn das Team
eine Datenbank
braucht…
Weniger ist mehr. Go serverless! Folie 28
Wenn das Team
eine Datenbank
braucht…
Weniger ist mehr. Go serverless! Folie 29
Währenddessen
im
Rechenzentrum
…
CloudNative
Function as a Service
ElasticBeanstalk
Serverless
Lambda
Google Cloud
InfrastructreasaService
App Engine
Google Firestore
DevOps
IT
Cloud Pub/Sub
Cosmos DB
API Gateway
AppService
AWS
Platform as a Service
CloudCloud Functions Automation
BaaS
Hosting
Simple Queue Service
Scaling
I‘vebeenlookingforfreedom
Queue Storage
AWS S3
Azure
CI / CD
Dynamo DB
Cloud Storage
Cosmos DB
RDS
Payasyougo
Vielen Dank!

Weitere ähnliche Inhalte

Ähnlich wie Go serverless!

Cloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu ServerlessCloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu ServerlessOPEN KNOWLEDGE GmbH
 
ColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep DiveColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep DiveBokowsky + Laymann GmbH
 
Windows Server 2012 - in 45 Minutes
Windows Server 2012 - in 45 MinutesWindows Server 2012 - in 45 Minutes
Windows Server 2012 - in 45 MinutesDigicomp Academy AG
 
SimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud DatenbankSimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud DatenbankONE Schweiz
 
Agile Softwareentwicklung mit Rails
Agile Softwareentwicklung mit RailsAgile Softwareentwicklung mit Rails
Agile Softwareentwicklung mit RailsHussein Morsy
 
Skalierung & Performance
Skalierung & PerformanceSkalierung & Performance
Skalierung & Performanceglembotzky
 
Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...
Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...
Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...Ekkard Schnedermann
 
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?panagenda
 
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...Peter Hecker
 
Einführung in Microsoft Azure und seine Funktionalitäten
Einführung in Microsoft Azure und seine FunktionalitätenEinführung in Microsoft Azure und seine Funktionalitäten
Einführung in Microsoft Azure und seine FunktionalitätenPOINT. Consulting GmbH
 
Azure Data Factory – Data Management für die Cloud
Azure Data Factory – Data Management für die CloudAzure Data Factory – Data Management für die Cloud
Azure Data Factory – Data Management für die Cloudinovex GmbH
 
Devops ohne root
Devops ohne rootDevops ohne root
Devops ohne rootcusy GmbH
 
ShareConf 2014: 10 Gründe warum der SharePoint langsam ist
ShareConf 2014: 10 Gründe warum der SharePoint langsam istShareConf 2014: 10 Gründe warum der SharePoint langsam ist
ShareConf 2014: 10 Gründe warum der SharePoint langsam istDavid Schneider
 
AdminCamp2017 - ApplicationInsights
AdminCamp2017 - ApplicationInsightsAdminCamp2017 - ApplicationInsights
AdminCamp2017 - ApplicationInsightsChristoph Adler
 
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...Peter Hecker
 
Jug nbg containerplattform dcos
Jug nbg containerplattform dcosJug nbg containerplattform dcos
Jug nbg containerplattform dcosRalf Ernst
 
Startimpuls at Microsoft w/ IFJ
Startimpuls at Microsoft w/ IFJStartimpuls at Microsoft w/ IFJ
Startimpuls at Microsoft w/ IFJReto Laemmler
 
Where are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_istWhere are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_istRamon Anger
 
Microsoft Azure Cloud mit der Sitecore Experience Platform
Microsoft Azure Cloud mit der Sitecore Experience PlatformMicrosoft Azure Cloud mit der Sitecore Experience Platform
Microsoft Azure Cloud mit der Sitecore Experience Platformcomspace GmbH & Co. KG
 

Ähnlich wie Go serverless! (20)

Cloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu ServerlessCloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu Serverless
 
ColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep DiveColdFusion im Enterprise Umfeld - Deep Dive
ColdFusion im Enterprise Umfeld - Deep Dive
 
Windows Server 2012 - in 45 Minutes
Windows Server 2012 - in 45 MinutesWindows Server 2012 - in 45 Minutes
Windows Server 2012 - in 45 Minutes
 
SimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud DatenbankSimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud Datenbank
 
Agile Softwareentwicklung mit Rails
Agile Softwareentwicklung mit RailsAgile Softwareentwicklung mit Rails
Agile Softwareentwicklung mit Rails
 
Skalierung & Performance
Skalierung & PerformanceSkalierung & Performance
Skalierung & Performance
 
Serverless: The Missing Manual
Serverless: The Missing ManualServerless: The Missing Manual
Serverless: The Missing Manual
 
Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...
Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...
Cloud at massive scale and incredible speed, Ekkard Schnedermann berichtet vo...
 
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
 
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
 
Einführung in Microsoft Azure und seine Funktionalitäten
Einführung in Microsoft Azure und seine FunktionalitätenEinführung in Microsoft Azure und seine Funktionalitäten
Einführung in Microsoft Azure und seine Funktionalitäten
 
Azure Data Factory – Data Management für die Cloud
Azure Data Factory – Data Management für die CloudAzure Data Factory – Data Management für die Cloud
Azure Data Factory – Data Management für die Cloud
 
Devops ohne root
Devops ohne rootDevops ohne root
Devops ohne root
 
ShareConf 2014: 10 Gründe warum der SharePoint langsam ist
ShareConf 2014: 10 Gründe warum der SharePoint langsam istShareConf 2014: 10 Gründe warum der SharePoint langsam ist
ShareConf 2014: 10 Gründe warum der SharePoint langsam ist
 
AdminCamp2017 - ApplicationInsights
AdminCamp2017 - ApplicationInsightsAdminCamp2017 - ApplicationInsights
AdminCamp2017 - ApplicationInsights
 
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
 
Jug nbg containerplattform dcos
Jug nbg containerplattform dcosJug nbg containerplattform dcos
Jug nbg containerplattform dcos
 
Startimpuls at Microsoft w/ IFJ
Startimpuls at Microsoft w/ IFJStartimpuls at Microsoft w/ IFJ
Startimpuls at Microsoft w/ IFJ
 
Where are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_istWhere are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_ist
 
Microsoft Azure Cloud mit der Sitecore Experience Platform
Microsoft Azure Cloud mit der Sitecore Experience PlatformMicrosoft Azure Cloud mit der Sitecore Experience Platform
Microsoft Azure Cloud mit der Sitecore Experience Platform
 

Mehr von ConSol Consulting & Solutions Software GmbH

"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen..."Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...ConSol Consulting & Solutions Software GmbH
 
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen..."Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...ConSol Consulting & Solutions Software GmbH
 

Mehr von ConSol Consulting & Solutions Software GmbH (20)

"Messaging with Quarkus"
"Messaging with Quarkus""Messaging with Quarkus"
"Messaging with Quarkus"
 
"Remote development of Quarkus applications"
"Remote development of Quarkus applications""Remote development of Quarkus applications"
"Remote development of Quarkus applications"
 
"Operator development made easy with Helm"
"Operator development made easy with Helm""Operator development made easy with Helm"
"Operator development made easy with Helm"
 
„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“
 
"Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation""Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation"
 
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen..."Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
 
"Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation""Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation"
 
"Messaging with Quarkus"
"Messaging with Quarkus""Messaging with Quarkus"
"Messaging with Quarkus"
 
"Remote development of Quarkus applications"
"Remote development of Quarkus applications""Remote development of Quarkus applications"
"Remote development of Quarkus applications"
 
"Operator development made easy with Helm"
"Operator development made easy with Helm""Operator development made easy with Helm"
"Operator development made easy with Helm"
 
„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“
 
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen..."Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
 
App Security with Keycloak and Quarkus
App Security with Keycloak and QuarkusApp Security with Keycloak and Quarkus
App Security with Keycloak and Quarkus
 
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworksConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
 
Keynote: Cloud native; DevOps,...
Keynote: Cloud native; DevOps,...Keynote: Cloud native; DevOps,...
Keynote: Cloud native; DevOps,...
 
Digitalisierung mit ConSol CM
Digitalisierung mit ConSol CMDigitalisierung mit ConSol CM
Digitalisierung mit ConSol CM
 
Monitoring klassisch oder Cloud
Monitoring klassisch oder CloudMonitoring klassisch oder Cloud
Monitoring klassisch oder Cloud
 
Testautomatisierung
TestautomatisierungTestautomatisierung
Testautomatisierung
 
OpenShift Evolution
OpenShift EvolutionOpenShift Evolution
OpenShift Evolution
 
Monitoring klassisch oder Cloud
Monitoring klassisch oder CloudMonitoring klassisch oder Cloud
Monitoring klassisch oder Cloud
 

Go serverless!

  • 1. Weniger ist mehr. Go serverless! Simon Fleischer Senior Softwareengineer 22.10.2019
  • 2. Weniger ist mehr. Go serverless! Folie 2 Agenda • Wenn das Team einen neuen Server braucht… • Was bedeutet „serverless“? • Serverless Services • Serverless und DevOps • Vorteile und Nachteile von serverless • Architekturbeispiele
  • 3. Weniger ist mehr. Go serverless! Folie 3 Wenn das Team einen neuen Server braucht…
  • 4. Weniger ist mehr. Go serverless! Folie 4 Wenn das Team einen neuen Server braucht…
  • 5. Weniger ist mehr. Go serverless! Folie 5 Wenn das Team einen neuen Server braucht…
  • 6. Weniger ist mehr. Go serverless! Folie 6 Wenn das Team einen neuen Server braucht…
  • 7. Weniger ist mehr. Go serverless! Folie 7 Währenddessen im Rechenzentrum …
  • 8. Weniger ist mehr. Go serverless! Folie 8 Wenn das Team einen neuen Server braucht…
  • 9. Weniger ist mehr. Go serverless! Folie 9 Wenn das Team einen neuen Server braucht… 1. Der Verantwortliche wird gefragt 2. Gespräche mit Operations werden geführt (Größe, Standort, Betriebssystem…) 3. Formulare werden ausgefüllt 4. Passierschein 25b wird benötigt… 5. Server wird bestellt 6. …Warten… 7. …Warten… 8. Server wird eingerichtet und Zugangsdaten versendet 9. … 10.Entwicklungsteam bemerkt, dass benötigte Rechte fehlen… 11.…
  • 10. Weniger ist mehr. Go serverless! Folie 10 Versuchen wir‘s mal ohne Server… Was bedeutet also „serverless“? Was können wir dagegen tun?
  • 11. Weniger ist mehr. Go serverless! Folie 11 Hardware und OS sind uns egal Wir müssen und wollen davon nichts wissen. Server wird „versteckt“ Wir arbeiten auf einer höheren Abstraktionsebene. Nutzung von Diensten Wir beziehen keine Hardware oder VMs von internen oder externen Dienstleistern, sondern Dienste. TEAM – Toll, ein Anderer macht‘s!
  • 12. Weniger ist mehr. Go serverless! Folie 12 Vergleich IaaS, PaaS und serverless You manage Service Provider Managed Networking Storage Serves O/S Virtualization Middleware Runtime Data Application Customization; higher costs; slower time to value On-Premise Networking Storage Servers O/S Virtualization Middleware Runtime Data Application IaaS Networking Storage Serves O/S Virtualization Middleware Runtime Data Application PaaS Networking Storage Servers O/S Virtualization Middleware Runtime Data Application Flexibility Error tolerance Scalability Capacity planning Functions Business Logic Serverless Standardization; lower costs; faster time to value
  • 13. Weniger ist mehr. Go serverless! Folie 13 Beispiele für serverless Services • Funktionen • Speicher • Datenbanken • Anwendungshosting • Messaging
  • 14. Weniger ist mehr. Go serverless! Folie 14 Funktionen Beispielprodukte • AWS Lambda • Google Cloud Functions • Azure Functions Anwendungsfälle • Funktion nimmt Währungsumrechnung vor (z.B. über API Gateway als Webservice) • Funktion generiert thumbnails • Lambda reagiert auf AWS-Ereignisse und führt Aktionen aus
  • 15. Weniger ist mehr. Go serverless! Folie 15 Speicher Beispielprodukte • AWS S3 • Google Cloud Storage • Azure Storage Anwendungsfälle • Hosting von statischen Webseiten • Ablage von Dateien von "serverless" Applikationen
  • 16. Weniger ist mehr. Go serverless! Folie 16 Datenbanken Beispielprodukte • AWS RDS • Google Firestore • Azure Cosmos DB Anwendungsfälle • Klassische relationale Datenbanken als Dienst • NoSQL-Datenbanken • Möglichkeit, ungenutzte Datenbanken automatisiert "schlafen zu legen"
  • 17. Weniger ist mehr. Go serverless! Folie 17 Anwendungshosting Beispielprodukte • AWS Elastic Beanstalk • Google App Engine • Azure App Service Anwendungsfälle • Betrieb von Applikationen "mit einem Klick" (z.B. Spring Boot)
  • 18. Weniger ist mehr. Go serverless! Folie 18 Messaging Beispielprodukte • AWS Simple Queue Service (SQS) • Google Cloud Pub/Sub • Azure Queue Storage Anwendungsfälle • Implementierung von Publisher / Subscriber Pattern • Lose Kopplung von Services • Asynchrone Verarbeitung von Nachrichten • Benachrichtigung bei Fehlern
  • 19. Weniger ist mehr. Go serverless! Folie 19 You built it, you run it! Serverless und DevOps • Kein „Über den Zaun werfen“ • Verantwortung kann in einem einzigen Team bleiben • Kein spezielles "Ops-Wissen" im Team nötig
  • 20. Weniger ist mehr. Go serverless! Folie 20 Vorteile (1/2) • Schnell verfügbar • Hohe Verfügbarkeit • Keine Engpässe bei kurzfristigen Lastspitzen (Bsp.: Beginn Kartenvorverkauf David Hasselhoff) • Keine Wartung von Betriebssystem und Hardware nötig • Weniger Monitoring nötig • Kein Aufwand für Sicherheitsupdates des Betriebssystems und Middleware • Rechtevergabe setzt an entscheidenden Punkten an (z.B. Aufruf von Funktionen), nicht am Betriebssystem • Backupkonzept kann leichtgewichtiger ausfallen und ist einfach einzurichten * Anm.: Das Konzert am 6.10. war nicht ausverkauft. *
  • 21. Weniger ist mehr. Go serverless! Folie 21 Vorteile (2/2) • Zahlung nach Nutzung • z.B. Funktionsaufrufe • Keine ungenutzten, „sich langweilenden“ Ressourcen • Kein ungenutzter Speicherplatz „auf Vorrat“ • Datenbank kann automatisch hoch- und heruntergefahren werden • Oft kostenlose Kontingente verfügbar (z.B. 1 Mio (!) Aufrufe von Lambda-Funktionen pro Monat) • Der Kopf ist frei für das Wesentliche: Ihre Businesslogik  Freiheit für Ihr Business!
  • 22. Weniger ist mehr. Go serverless! Folie 22 Nachteile (1/2) • Weniger Freiheitsgrade • Erschwertes oder unmögliches Profiling, Debugging, Monitoring • Ggf. ungeeignet für High-Performance-Anwendungen (z.B. einmalig hohe Latenz, wenn Lambda initialisiert wird) • Nicht auszuschließende (Sicherheits-) Probleme durch Multimandantennutzung
  • 23. Weniger ist mehr. Go serverless! Folie 23 Nachteile (2/2) • Erhöhtes Lock-In-Risiko (Allerdings: Standardisierung von Cloud-Diensten wird derzeit vorangetrieben) • Falsch gewählte Services und Architekturen können zu hohen Kosten führen • Oftmals Umdenken bei Entwicklung nötig
  • 24. Weniger ist mehr. Go serverless! Folie 24 Einfacher Webservice auf Basis von API Gateway und Lambda AWS Cloud API Gateway Lambda REST - Client
  • 25. Weniger ist mehr. Go serverless! Folie 25 Dynamische Webseite auf Spring Boot - Basis AWS Cloud Elastic Beanstalk Spring Boot Application Benutzer (Browser) Route 53
  • 26. Weniger ist mehr. Go serverless! Folie 26 Dynamische Webseite auf Basis von S3, Lambda, API Gateway und RDS AWS Cloud S3 LambdaAPI Gateway DynamoDB Statische Inhalte (HTML, CSS, Bilder…) Dynamische Inhalte, abgerufen über AJAX Benutzer (Browser)
  • 27. Weniger ist mehr. Go serverless! Folie 27 Wenn das Team eine Datenbank braucht…
  • 28. Weniger ist mehr. Go serverless! Folie 28 Wenn das Team eine Datenbank braucht…
  • 29. Weniger ist mehr. Go serverless! Folie 29 Währenddessen im Rechenzentrum …
  • 30. CloudNative Function as a Service ElasticBeanstalk Serverless Lambda Google Cloud InfrastructreasaService App Engine Google Firestore DevOps IT Cloud Pub/Sub Cosmos DB API Gateway AppService AWS Platform as a Service CloudCloud Functions Automation BaaS Hosting Simple Queue Service Scaling I‘vebeenlookingforfreedom Queue Storage AWS S3 Azure CI / CD Dynamo DB Cloud Storage Cosmos DB RDS Payasyougo