Egy átfogó és gyakorlati képzés, amelynek a célja olyan szoftverarchitektúrák építése, amelyekről nem is gondoltad, hogy lehetséges, és ahol elsajátíthatod a nagy terhelésű, elosztott, hibatűrő rendszerek építését.
Horváth Gergely,
Ex. Google Developer &
Engineering Manager, Technical lead @ Hypixel Studios
17 alkalom
hétfő és szerda
18:00–19:30
A nagy és sikeres szoftverek olyan dolgokat valósítanak meg, amiket sokan elképzelni sem tudunk. Nem könnyű feladat ilyeneket tervezni, de a megfelelő gondolkodásmóddal nem is nehéz. A kurzuson az ehhez szükséges építőelemeket fogjuk megismerni és gyakorlati példákkal, házi feladatokkal kiegészítve megtanulni azt, hogyan építsünk belőlük nagy teherbírású rendszereket.
Mi történik, ha a bemeneten olyan adatot kapunk, amire nem számítunk? Hogy szolgáljunk ki túlterhelést okozó, de normál ügyfeleket? Mi történik, ha meghibásodik a háttértár? És ha NullPointerExceptiont kér valaki? Egy összetett rendszer tervezésénél rengeteg építőelem közül kell kiválasztanunk a megfelelőket, és integrálni őket olyan módon, hogy nagy terhelés alatt, akár évekkel később is jól tudjon teljesíteni.
akik nem tudják pontosan, hogyan kezdjenek neki egy elosztott rendszer tervezésének vagy meglévő, komplex rendszert kell felskálázniuk
akik szeretnék lefejleszteni az első nagyobb terhelésű szoftverüket és szeretnék elsajátítani az „architect” gondolkodásmódot
akik stratégiai szempontból szeretnék értékelni az elkészült szoftverterveket és olyan racionális döntéseket hozni, amelyek hosszú távon kifizetődők
• ismerni fogod a fontos alapelemeket egy komplex, hibatűrő rendszer építéséhez,
• megismered a gyakorlati különbségeket egy monolit és microservices architektúra között,
• elsajátítod a függőleges, vízszintes, gyorsítótáras és különböző terheléselosztásos skálázási módszereket,
• a különböző adatbázisokat, üzenetsorokat és adatfeldolgozási módszereket,
• tudod, hogyan használd és integráld ezeket a komponenseket úgy, hogy egymást segítsék meghibásodások esetén,
• gyakorlati tapasztalattal fogsz rendelkezni nagy és hibatűrő rendszerek tervezéséhez, építéséhez, teszteléséhez és felülvizsgálatához,
• saját implementációd lesz egy nagy teljesítményt igénylő probléma megoldására.