Schulungsübersicht
Einführung
- System- und Servicearchitektur, PaaS und cloud-natives Design
Übersicht über die monolithische Systemarchitektur
- Ausführung der gesamten Funktionalität einer monolithischen Anwendung in einem einzigen Prozess
- Skalierbarkeit durch Replikation über mehrere Server
- In monolithischen Systemen verwendete Protokolle: EAI, CORBA usw.
Übersicht über Webdienste
- Serviceorientierte Architektur (SOA) und Microservice-Architektur
Serviceorientierte Architektur (SOA)
- Vorteile und Kosten von SOA
- Erfolge und Misserfolge bei der Umsetzung von SOA
- Messaging und ESB
- Infrastruktur und Tools, die SOA unterstützen
Wie Microservices Webdienst-Konzepte umsetzen
- Eine Sache tun und sie gut machen
- DevOps
- Continuous Deployment und Delivery (Continuous Integration, Continuous Build Process usw.)
- Leichtgewichtige Protokolle
Microservice-Protokolle und -Standards
- HTTP, JMS, AMQP, Websockets, JSON usw.
Entwicklungsframeworks für den Aufbau von Microservices
- Java-basierte Frameworks (Spring Cloud)
- JavaScript-basierte Frameworks (Seneca)
Zerlegung einer monolithischen Anwendung
- Entwicklung unabhängig bereitstellbarer Anwendungen
- Organisation von Microservice-Anwendungen um Geschäftsfähigkeiten herum
- Fallstudie: Migration einer monolithischen Anwendung auf drei Kern-Microservices
Einrichtung einer Spring Cloud-Entwicklungsumgebung
- Einrichtung von Docker und Docker Compose
- Einrichtung von Umgebungsvariablen
Übersicht über Spring Cloud und Spring Boot
- Spring Cloud-Unterprojekte: Config Server & Bus, Eureka, Ribbon, Feign und Hystrix
- Spring Boot
Erstellung einer Spring Boot-Anwendung
Zentralisiertes, versionskontrolliertes Konfigurationsmanagement mit Spring Cloud Config
Dynamische Konfigurationsaktualisierungen mit Spring Cloud Bus
Service Discovery mit Eureka
Load Balancing mit Ribbon
Anwendung von Schaltungsbrechern mit Hystrix
Deklarative REST-Clients mit Feign
Arbeit mit API Gateway
Sicherheit einer Microservice-Anwendung
Verfolgung von Microservices zur Aufdeckung von Latenzen
Bereitstellung von Microservices
- Container (Docker, K8N, LXC usw.)
- Konfigurationsmanagement (Ansible usw.)
- Service Discovery
- Überwachung und Verwaltung von Microservices
- Infrastruktur für Microservices
Cloud und automatische Skalierbarkeit von Microservices
- Redundanz und Fail-over von Microservices
- Leistungsskalierbarkeit für Microservices
- Automatische Skalierbarkeit
- Implementierung von Microservices auf OpenStack, AWS und anderen Cloud-Plattformen
Fehlerbehebung bei häufigen Problemen verteilter Anwendungen
- Komplexität des Ökosystems
- Netzwerkleistung
- Sicherheit
- Bereitstellung
- Testen
- Nano-Services
Schlussbetrachtungen für den Aufbau produktionsreifer Systeme
- Das System für Einsteiger leicht zugänglich machen
- Das System vollständig gestalten, damit es als Grundlage für Unternehmensanwendungen dienen kann
Zusammenfassung und Fazit
Voraussetzungen
- Verständnis von Software- und Systemengineering
- Erfahrung in der Java-Entwicklung
- Erfahrung mit dem Spring Framework
Zielgruppe
- Java-Entwickler, die schnell Microservices erstellen und bereitstellen möchten
- Systemarchitekten, die eine Microservice-Architektur implementieren möchten
Erfahrungsberichte (3)
Übungsaufgaben in EA durchführen.
Pawel - Krajowa Szkola Skarbowosci
Kurs - UML in Enterprise Architect (workshops)
Maschinelle Übersetzung
Die Praktiken
Ivan - si
Kurs - Spring Cloud for Microservices
Maschinelle Übersetzung
Guter Trainer und guter Ablauf des Trainings
Mateusz Mical - Research and Development Center Bury Sp. z o .o.
Kurs - Systems Modeling with SysML and Enterprise Architect (EA)
Maschinelle Übersetzung