1 Applikationen in der Cloud
- Applikationen in der Cloud
- Aufbau von Applikationen
- Open APIs
- Wo kommt das OS her? (Satellite Server, Cloud-init, …)
- Cloud-untaugliche Anwendungen
- Cloud Native Applications
- 12-Factor-App
- Versionsverwaltung (Git)
- Saubere Trennung des eigentlichen Codes von anderem
- Build, Release, Run
- Stateless Applications
- Web Services und Port-Bindung
- Microservices
- Weitere Faktoren
- STQB
- Applikationssicherheit in Cloud-Umgebungen
- OWASP Top 10
- Continuous Integration
- DevOps
- Continuous Delivery
- CI/CD
- Skripte, Tools und Lifecycle von Apps in der Cloud
- Ausblick
- Container-Apps1.4.2 Wie geht es weiter?
Einführung in Microservices
- Definition Microservices
- Motivation für Microservices
- Herausforderungen beim Einsatz von Microservices
- Gestaltung von Microservices
- Designkriterium Größe von Microservices
- Designkriterium Teamstrukturen (Gesetz von Conway)
- Designkriterien Domain-driven Design und Bounded Context
- Designkriterium User Interface
- Gründe, um weitere Microservices zu erstellen
- Aufteilung des Gesamtprojekts – Large Scale Structures
- Anwendungsarchitekturen auf Basis von Microservices
- Fachliche Aufteilung
- Design Tipps
- Konfiguration eines Microservices – Zentral oder im Service
- Data Management in Microservices-Umgebungen
- Service Discovery
- Load Balancing – Service Discovery versus Load Balancer
- Sicherheit
- Service-Meshes
- Monitoring
- Deployment
- Orchestrierung von Infrastruktur und Applikationen
- Puppet und Chef
- Ansible
Realisierung einer Microservices-Landschaft
- Versionsverwaltung mit Git
- Git
- GitHub
- GitLab
- Tools für Continuous Integration
- GitLab für DevOps
- Jenkins
- TravisCI
- Testing
- Testautomatisierung
- REST API im Detail
- RESTful API
- Konstruktion der HTTP-Meldungen
- Generische Beschreibung eines REST API
- Idempotenz
- Nested Ressource Expansion
- Authentifizierung
- Content Negotiation
- Alternativen zu REST
- API-Gateway
- Reverse Proxying mit NGINX (Beispiel)
- API Gateway-Frameworks
Installation und Bedienung
- Installation von Postman
- Nutzung eines Accounts
- Die Benutzeroberfläche von Postman
- Anlegen eines Environment
- Arbeiten mit Variablen
- Nutzung von Collections
- Anlegen einer eigenen Collection
- Einbinden einer öffentlichen Collection
Container
- Zusammenhang Microservices und Container
- Container-Virtualisierung – Technische Aspekte
- Container-Technologien
- Docker
- Bestandteile von Docker
- Docker-Nutzung in Unternehmen
- Docker Monitoring
- Kubernetes
- Service Meshes
- Istio
- Serverless Computing – Functions
- Cloud: Optimiert für Mode-2-Anwendungen
Die Programmiersprache Python
- Was ist Python?
- Download, Installation und Lieferumfang
- Python-Shell
- Schnelldurchlauf im interaktiven Modus
- Programmausführung im interaktiven Modus
- Verwendung eines Editors oder einer IDE
- Programmausführung eines Python Skriptes
- Datentypen
- Erste Datentypen in Python
- Anweisung und Anweisungsblock
- Anweisungen und Blöcke in Python
- Ausdruck
- Boolesche und Arithmetische Operationen
- Weitere Ausdrücke in Python
- Variablen und Zuweisungen
- Variablen in Python
- Details der Zuweisung
- Funktionen I: Eingebaute Funktionen
- Die Hilfe-Funktion
- Vergleiche und Bedingungen
- Die Bedingung: if
- Kombinationen und Verknüpfungen
- Datentypen II – String Details
- Iterationen I – While
- While-Schleife
- For – Eine Vorschau
- Funktionen II – Eigene Funktionen
- Verschachtlung
- Global oder Lokal
- Rekursion
- Arten von Argumenten
- Datentypen III
- Liste
- Weitere Methoden von Listen
- Tupel
- Sequenz
- Slicing
- Eine Menge – Set
- Dictionaries
- Dictionaries – Methoden
- Iterationen II
- For-Details
- Weitere Konzepte und Funktionen
- Exceptions
- Anonyme Funktionen
- Comprehensions
API-Gateway
- Ohne API-Gateway…
- Mit API-Gateway!
- Reverse Proxying mit NGINX (Beispiel)
- API Gateway-Frameworks
- Welches Gateway?