Mikroservicearkitektur - kurs 46 900 rub. från IBS Training Center, träning 24 timmar, Datum 27 november 2023.
Miscellanea / / November 27, 2023
Microservice architecture (MSA) har relativt nyligen blivit känd som den mest populära arkitekturen. Dess användning ger många fördelar i olika skeden av produktens livscykel. I synnerhet möjliggör MCA snabbare svarstider på affärskrav, vilket ofta gör det överlägset andra arkitektoniska stilar.
Men i processen att utveckla MCA-system står arkitekten inför många utmaningar, av vilka många får nybörjare att rulla tillbaka.
Nedbrytningsfel kan leda till en allvarlig ökning av utvecklingskomplexiteten. Prestanda blir lidande på grund av oöverstiglig nätverkslatens. Distribuerad datalagring tillåter inte transaktionskonsistens. Ett stort antal komponenter som interagerar över nätverket minskar tillförlitligheten. Svårt att säkerställa säkerheten. Dessutom kräver testning och underhåll av ett distribuerat system en separat diskussion.
Denna kurs kommer att visa fördelarna och nackdelarna med att använda MCA. Hjälper dig att fatta ett välgrundat beslut om tillämpligheten av ISA beroende på verksamhetens behov och teamets kapacitet. Kursen undersöker de huvudsakliga frågorna i samband med implementering av en mikrotjänstarkitektur. Strategier, mekanismer, mönster som löser problemen ovan. För varje problem som diskuteras kommer de vanligaste verktygen att presenteras (som Kubernetes, Istio, Histryx, Kibana och många andra).
Praktiska övningar kommer att tillåta dig att förvärva färdigheten att självständig designa MCA-system.
Ämnen som behandlas:
1. Arkitektoniska stilar (2 timmar)
Begrepp av monolit, SOA, MSA.
Jämförelse och motivering för val.
2. MSA-nedbrytningsmönster (2 timmar)
Optimal mikrotjänststorlek;
Uppdelning av tjänster efter affärsmöjlighet;
Fördelning av tjänster efter problemområden;
Praxis för att definiera ämnesområden;
Nedbrytning enligt tekniska och organisatoriska aspekter.
3. Organisation av utveckling för MSA (1 timme)
Organisation av team under MSA;
Organisation av ett kodlager under MSA.
4. Microservices integration (3 timmar)
Interaktionsmönster;
Synkrona och asynkrona interaktionsmekanismer;
Orkesterering och koreografi;
Grundläggande protokoll och teknologier (REST, gRPC, GraphQL, Kafka, RabbitMQ, etc.);
Interaktion med externa system (API Gateway, BFF);
Reaktiva system;
Händelsedrivna arkitekturer;
Separation av kommando och begäran.
5. Organisering av arbetet med data i MSA (3 timmar)
Mönster för att arbeta med data;
Generera händelser;
Referensdata i MSA;
Enskild källa till sanning (Source of Truth) i MSA.
6. Grundläggande ISA-mallar (9 timmar)
Modifierbarhet.
Löser problemet med hög anslutning. Versionering av gränssnitt och händelser. Typer av kontrakt. Förändringar i händelsemodellen. Mönster för att organisera förfrågningar. Microservice chassi. Service Mesh.
Skalbarhet.
Mönster för att konstruera balanserare. Detektionstjänster och mönster för att arbeta med dem.
Prestanda.
Prestandamönster i MSA (overkill, graciös degradering, etc.).
Konsistens.
Konsekvensfrågor i MSA. CAP-sats. Lösningar på konsistensproblem. Tvåfas commits. SAGA mönster. Minskad konsistensnivå.
Pålitlighet.
Feltoleransmekanismer. Kretsbrytarmönster, strypning, beroende timeouts, etc.
Säkerhet.
Säkerhetsmekanismer i MSA. Autentisering. Tillstånd. Kantskydd. Skydd av kommunikationskanaler. Grundläggande protokoll och mönster (OAUTH2, JWT, gatekeeper, betjänad nyckel, etc.).
Testbarhet.
Pyramid och fyrkantstestning. Funktioner för att testa mikrotjänster.
Enhetstestning. Integrationstestning. Komponenttestning. E2E-testning. MSA-testmönster.
Enkelt underhåll.
Observerbarhet. Övervakningsmönster (distribuerad spårning, logaggregation). Övervakning och loggning. Konfigurera mikrotjänster. Externisering av konfigurationen. Systemstöd.
7. Implementera mikrotjänster (2 timmar)
Mönster för "Deployment pipeline";
Implementeringsmönster;
Använder Docker- och Kubernetes-teknologier;
Använda ISTIO-rutnätet;
Serverlös distribution;
Utbyggnadsstrategier (blågrön, kanariefågel, etc.).
8. Migrationsstrategier från monolit till MSA (2 timmar)
Strategier för att migrera från monolit till mikrotjänster;
Strangler monolit;
Strypningsmönster;
Kommunikation mellan en mikrotjänst och en monolit;
Databasmigrering.