Schița de curs
Introducere
- Arhitectura sistemelor și a serviciilor, PaaS și designul cloud-nativ
Prezentare generală a arhitecturii sistemelor monolitice
- Rularea întregii funcționalități a unei aplicații monolitice într-un singur proces
- Scalabilitate prin replicare pe mai multe servere
- Protocoale utilizate în sistemele monolitice: EAI, CORBA etc.
Prezentare generală a serviciilor web
- Arhitectura orientată pe servicii (SOA) și arhitectura Microservices
Service-Oriented Architecture (SOA)
- Beneficii și costuri ale SOA
- Succese și eșecuri în implementarea SOA
- Mesageria și ESB
- Infrastructura și instrumentele care susțin SOA
Cum Microservices Implementarea conceptelor de servicii web
- Faceți un singur lucru și faceți-l bine
- DevOps
- Implementare ș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.
Cadre de dezvoltare pentru construirea Microservices
- Cadre bazate pe Java- (Spring Cloud)
- Javacadre bazate pe scripturi (Seneca)
Descompunerea unei aplicații monolit
- Dezvoltarea de aplicații care pot fi implementate independent
- Organizarea aplicațiilor de microservicii în jurul capacităților de afaceri
- Studiu de caz: Migrarea unei aplicații monolit către trei microservicii de bază
Configurarea unui mediu de dezvoltare Spring Cloud
- Configurarea Docker și Docker Compose
- Setarea variabilelor de mediu
Prezentare generală a subproiectelor Spring Cloud și Spring Boot
- subproiecte Spring Cloud: Config Server & Bus, Eureka, Ribbon, Feign și Hystrix
- Spring Boot
Crearea unei aplicații Spring Boot
Gestionarea centralizată a configurației în versiune cu Spring Cloud Config
Actualizări dinamice ale configurației cu Spring Cloud Bus
Descoperirea serviciilor cu Eureka
Echilibrarea sarcinii cu Ribbon
Aplicarea întrerupătoarelor de circuit cu Hystrix
Clienți REST declarativi cu Feign
Lucrul cu API Gateway
Securizarea unei aplicații de microservicii
Urmărirea microserviciilor pentru a descoperi latențele
Implementarea Microservices
- Containere (Docker, K8N, LXC, etc...)
- Configuration Management (Ansible, etc...)
- Descoperirea serviciilor
- Monitorizarea și gestionarea Microservices
- Infrastructura pentru Microservices
Cloud și autoScalabilitate a Microservices
- Redundanță și fail-over pentru microservicii
- Scalabilitatea performanței pentru Microservices
- Scalabilitate automată
- Implementarea Microservices pe OpenStack, AWS și alte platforme cloud
Depanarea problemelor comune pentru aplicațiile distribuite
- Complexitatea ecosistemului
- Performanța rețelei
- Securitate
- Implementare
- Testare
- Nano-servicii
Considerații finale pentru construirea sistemelor gata de producție
- Realizarea unui sistem ușor pentru începători
- Realizarea unui sistem complet, astfel încât să poată servi drept bază pentru aplicațiile întreprinderii
Rezumat și concluzie
Cerințe
- O înțelegere a ingineriei software și de sistem
- Java experiență în dezvoltare
- Experiență cu Spring Framework
Audiență
- Java dezvoltatori care doresc să construiască și să implementeze rapid microservicii
- arhitecți de sistem care doresc să implementeze o arhitectură de microservicii
Mărturii (5)
Exerciții practice în EA.
Pawel - Krajowa Szkola Skarbowosci
Curs - UML in Enterprise Architect (workshops)
Tradus de catre o masina
A fost dinamic și foarte practic, în plus la faptul că ne a fost furnizată o mașină virtuală prin intermediul unei adrese URL
Aida - ENGINEERING AND SERVICES JF S.A. DE C.V.
Curs - Spring Cloud for Microservices
Tradus de catre o masina
-Cunoștințele profesorului în domeniu au fost foarte bune. El a reușit să explici cu frumusețe și să răspundă la toate întrebările în acel moment. -Să știu ce toate instrumentele pot face a fost foarte util. -Structura pe care a arătat, cum ar fi utilizarea scenariilor și traceabilitatea, ar fi foarte de ajutor în munca mea zilnică.
Harsha Jain - Scania CV AB
Curs - Introduction to Enterprise Architect
Tradus de catre o masina
Stimări mari. (Note: "Great knowledge" can also be translated as "Cunoștințe excelente" which might convey the meaning more accurately in Romanian context.) Since I need to follow strictly the guidelines and translate only what is provided, I'll stick with the direct translation: Stimări mari.
Marie - Forsvarets forkningsinstitutt
Curs - Systems Modeling with SysML and Enterprise Architect (EA)
Tradus de catre o masina
Exemple practice și discuții deschise
Nenad Terzic - Pejsejf B"lgaria EOOD
Curs - Building Microservices with Spring Cloud and Netflix OSS
Tradus de catre o masina