Dizajniranje aplikacija visokih performansi - tečaj 46 900 rub. iz IBS Training Center, obuka 25 sati, Datum: 11.03.2024.
Miscelanea / / November 28, 2023
Čak i prije dizajniranja bilo kojeg softverskog sustava, morate shvatiti da zbog određenih ograničenja on uvijek može postati sustav visokih performansi. Pri razvoju sustava visokih performansi potrebno je utvrditi koji parametri definiraju sustav kao visokoučinkovit. Ako je sustav visokih performansi, tada se za njegovu uspješnu implementaciju moraju poduzeti posebne mjere za osiguranje performansi.
Tečaj ispituje razlike između sustava visokog opterećenja, visoke pouzdanosti i visokih performansi.
Glavni cilj kolegija je omogućiti razumijevanje osnovnih koncepata, principa i pristupa koji se koriste u projektiranju sustava visokih performansi.
Uobičajena fraza: "Trebalo bi raditi brzo!" - ovo nije uvjet. Tijekom obuke polaznici ne samo da će naučiti zašto to nije uvjet, već će naučiti i kako pravilno raditi i analizirati zahtjeve izvedbe. Tečaj također uvodi koncepte "kritičnih scenarija". Stečena znanja o radu sa zahtjevima studenti će učvrstiti u praksi tijekom praktične zadaće.
Predmet ispituje glavne primjere gubitka produktivnosti programskih sustava. Nakon toga daju se glavni načini borbe protiv performansi sustava. Također se u okviru kolegija na praktičnim primjerima primjene obrađuju uzorci koji se koriste u projektiranju sustava s povećanim zahtjevima. performanse, pruža informacije o glavnim anti-uzorcima na koje nailazimo pri implementaciji softverskih sustava koji utječu produktivnost.
Posebna pažnja posvećena je pripremi sustava za testiranje i analizi rezultata testiranja. Opisuje izradu programa i metodologije za ispitivanje visokoopterećenih sustava, modela opterećenja sustava i raspravlja o metodologiji koja omogućuje kvantitativnu procjenu učinka sustava.
Budući da programeri softverskih sustava često moraju rješavati probleme razvoja visoko opterećenih sustava koji obrađuju velike količine podataka s obzirom na zahtjeve vremena odgovora i količine obrađenih podataka, tečaj će biti koristan ne samo za arhitekte, već i za voditelje razvojnih projekata, programeri.
1. Koncept sustava visokih performansi (2,5 sata):
Aplikacija visokih performansi, aplikacija visokog opterećenja, aplikacija visoke dostupnosti.
Upravljanje performansama aplikacije.
Ovisnost cijene ispravljanja pogreške o stupnju detekcije i stupnju uvođenja.
Osnovne karakteristike koje opisuju performanse sustava.
Model opterećenja sustava.
2. Analiza zahtjeva za sustave visokih performansi (1,5 sati)
Formiranje nefunkcionalnih zahtjeva za sustave visokih performansi.
Suočavanje s proturječjima pri stvaranju zahtjeva izvedbe.
Potpunost zahtjeva.
Radionica (1 sat):
Analiza zahtjeva za nedosljednošću i potpunošću.
2.1.Arhitektonska taktika. Taktika produktivnosti (1,5 sati)
Značajke formiranja zahtjeva za sustave čekanja (QS).
3. Projektiranje sustava visokih performansi (2 sata)
Atributi kvalitete sustava.
Ustupci pri istodobnom radu na nekoliko atributa kvalitete: primjer CAP i PACELC.
Radionica: Analiza principa balansiranja atributa kvalitete na primjeru Amazon Dynamo DB (1 sat):
Razmatranje pristupa fleksibilnom skaliranju sustava na primjeru Amazon Dynamo DB uz zadržavanje kontrole nad tolerancijom grešaka i održavanje konstantnih performansi.
3.1. Klasični pristupi izvedbi
Glavni uzroci gubitka performansi sustava (1 sat).
Osnovne metode povećanja performansi sustava (1 sat).
Principi horizontalnog i vertikalnog skaliranja sustava (0,5 h).
Radionica (2 sata):
Analiza primjera skaliranja sustava.
Pretvaranje monolitnog sustava u Map-Reduce.
Pregled Map-Reducea.
Pretvaranje Map-Reduce u Lambda arhitekturu kako bi se smanjili problemi čiste Map-Reduce prakse.
4. Obrasci za implementaciju sustava visokih performansi (5 sati)
Glavne klase uzoraka koji se koriste u izgradnji sustava visokih performansi: GRASP, uzorci arhitekture, obrasci integracije aplikacija.
Primjeri praktične primjene predložaka u suvremenim standardima.
Primjeri praktične primjene predložaka u razvojnim okvirima modernih integracijskih sustava.
5. Kodiranje sustava visokih performansi (2 sata)
Osnovna pitanja kodiranja sustava visokih performansi.
Optimizacijske metode za moderne prevoditelje i runtime okruženja.
6. Testiranje sustava visokih performansi (2 sata)
Vrste testova koji se koriste za dokazivanje performansi sustava.
Priprema za ispitivanje (izrada scenarija i izrada modela opterećenja).
Analiza rezultata ispitivanja.
7. SPE metodologija (1 sat)
Uvod u SPE metodologiju. Povijest, granice uporabe.
Metodologija analize sustava pomoću SPE.
Radionica (1 sat):
Razmatranje praktičnog primjera korištenja SPE metodologije za:
Procjena granica performansi sustava na temelju trenutnih karakteristika hardvera i softvera;
Procjena utjecaja arhitektonskih odluka na performanse sustava;
Procjene hardverskih zahtjeva na temelju zahtjeva za performansama, na temelju skaliranja trenutnih procesa sustava.