Schița de curs
Introducere
- Arhitectura sistemelor și a serviciilor, PaaS și design cloud-native
Prezentare generală a Arhitecturii Sistemelor Monolitice
- Rularea întregii funcționalități a aplicațiilor monolitice într-un singur proces
- Scalabilitate prin replicare pe mai multe servere
- Protocoale utilizate în sistemele monolitice: EAI, CORBA, etc.
Prezentare generală a Webservices
- Arhitectura Orientată pe Servicii (SOA) și Arhitectura Microserviciilor
Arhitectura Orientată pe Servicii (SOA)
- Beneficii și costuri ale SOA
- Succese și eșecuri în implementarea SOA
- Mesagerie și ESB
- Infrastructură și instrumente care sprijină SOA
Cum implementează Microserviciile Conceptele Web Service
- Fă un lucru și fă-l bine
- DevOps
- Implementare continuă și livrare continuă (Integrare continuă, Proces de construcție continuă, etc.)
- Protocoale ușoare
Protocoale și Standarde pentru Microservicii
- HTTP, JMS, AMQP, Websockets, JSON, etc.
Framework-uri de Dezvoltare pentru Construirea Microserviciilor
- Framework-uri bazate pe Java (Spring Cloud)
- Framework-uri bazate pe Javascript (Seneca)
Dezasamblarea unei Aplicații Monolitice
- Dezvoltarea de aplicații independent implementabile
- Organizarea aplicațiilor microservicii în jurul capacităților de afaceri
- Studiu de caz: Migrarea unei aplicații monolitice la trei microservicii de bază
Configurarea unui Mediu de Dezvoltare Spring Cloud
- Configurarea Docker și Docker Compose
- Setarea variabilelor de mediu
Prezentare generală a Spring Cloud și Spring Boot
- Sub-proiecte Spring Cloud: Config Server & Bus, Eureka, Ribbon, Feign și Hystrix
- Spring Boot
Crearea unei aplicații Spring Boot
Gestionarea centralizată și versionată a configurației cu Spring Cloud Config
Actualizări dinamice de configurație cu Spring Cloud Bus
Descoperirea serviciilor cu Eureka
Echilibrarea sarcinilor cu Ribbon
Aplicarea întreruptoarelor de circuit cu Hystrix
Clienți REST declarați cu Feign
Lucrul cu API Gateway
Securizarea unei aplicații microservicii
Trasarea microserviciilor pentru a descoperi latențe
Implementarea Microserviciilor
- Containere (Docker, K8N, LXC, etc...)
- Gestionarea Configurării (Ansible, etc...)
- Descoperirea serviciilor
- Monitorizarea și gestionarea microserviciilor
- Infrastructura pentru Microservicii
Scalabilitatea Cloud și Auto Scalabilitatea Microserviciilor
- Redundanță și fail-over pentru microservicii
- Scalabilitatea performanței pentru microservicii
- Auto scalabilitate
- Implementarea microserviciilor pe OpenStack, AWS și alte platforme cloud
Depanarea Problemelor Comune ale Aplicațiilor Distribuite
- Complexitatea ecosistemului
- Performanța rețelei
- Securitate
- Implementare
- Testare
- Nano-servicii
Considerații Finale pentru Construirea Sistemelor Gata pentru Producție
- Realizarea sistemului ușor de utilizat pentru începători
- Realizarea sistemului complet pentru a servi ca fundație pentru aplicații enterprise
Rezumat și Concluzii
Cerințe
- O înțelegere a ingineriei software și a sistemelor
- Experiență în dezvoltare Java
- Experiență cu Spring Framework
Publicul țintă
- Dezvoltatori Java care doresc să construiască și să implementeze rapid microservicii
- Arhitecți de sisteme care doresc să implementeze o arhitectură de microservicii
Mărturii (3)
Exerciții de practică în EA.
Pawel - Krajowa Szkola Skarbowosci
Curs - UML in Enterprise Architect (workshops)
Tradus de catre o masina
Practicile
Ivan - si
Curs - Spring Cloud for Microservices
Tradus de catre o masina
Bun instructor și proces de instruire
Mateusz Mical - Research and Development Center Bury Sp. z o .o.
Curs - Systems Modeling with SysML and Enterprise Architect (EA)
Tradus de catre o masina