Nagy terhelhetőségű szoftverek építése az alapoktól — online kurzus | robot_dreams
  • élő, online kurzus
  • 17 alkalom
  • személyes visszajelzés
  • gyakorlatias képzés

Nagy terhelhetőségű szoftverek építése az alapoktól

Egy rendszer nemcsak attól lesz nagy terhelést elbíró, hogy a késleltetése alacsony, az áteresztőképessége pedig nagy – a hibatűrés is elengedhetetlen a megfelelő működéshez. Ismerd meg kurzusunkon azokat a komponenseket, amelyek segítségével jól skálázható, hibatűrő rendszereket építhetsz, és érj el több millió kérést néhány másodperc alatt!

Horváth Gergely

Ex. Google Developer & Engineering Manager,
Technical lead

Hypixel Studios

A KURZUSRÓL

  • Kezdés:

    AUGUSZTUS 28.

  • Hossz:

    17 alkalom

  • Formátum:

    élő, online

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 a rendszer nagy terhelés alatt, akár évekkel később is jól tudjon teljesíteni. Ezen a kurzuson ezeket az építőelemeket fogjuk megismerni és gyakorlati példákkal, házi feladatokkal kiegészítve tanuljuk meg a használatukat.

KINEK AJÁNLJUK A KURZUST?

Fullstack-, backend- és frontendfejlesztőknek

Szeretnél olyan weboldalakat vagy applikációkat tervezni, amik nem omlanak össze magasabb látogatottság esetén? Most megismerheted a nagy teherbírású rendszerek fejlesztéséhez szükséges szempontokat, és körbejárjuk a microservice architektúra, a konténerizáció és a cloud-lehetőségek témaköreit is.

Technikai IT-vezetőknek

Szeretnéd stratégiai szempontból értékelni az elkészült szoftverterveket, és olyan racionális döntéseket hozni, amelyek hosszú távon kifizetődők? A kurzuson választ kaphatsz a kérdéseidre, legyen szó akár a szoftverek tervezéséről, akár az implementálásukról vagy az üzemeltetésükről.

Szoftverfejlesztőknek és -designerek

Nem tudod, hogyan kezdj hozzá egy elosztott rendszer tervezéséhez? Gondot okoz egy meglévő, komplex rendszer felskálázása? Sajátítsd el az „architect” gondolkodásmódot, és szerezz biztos alapokat, amelyekkel lefejlesztheted az első nagyobb teherbírású szoftveredet!

 

MIRE SZÁMÍTHATSZ A KURZUSON?

  • 01

    ÁTFOGÓ ISMERETEK

    Megismerheted azokat az alapelemeket – például a különféle elosztott rendszereket, formátumokat, protokollokat, adatbázisokat – amiknek a használatával komplex, hibatűrő rendszereket lehet építeni.

  • 02

    GYAKORLATI TUDÁS

    Példákon és gyakorlatokon keresztül sajátíthatod el, hogyan használd és integráld a fentebb említett komponenseket úgy, hogy egymást segítsék meghibásodások esetén. Így a kurzus végére nemcsak elméleti tudással, de tapasztalattal is fogsz rendelkezni nagy és hibatűrő rendszerek tervezéséhez, építéséhez, teszteléséhez és felülvizsgálatához.

  • 03

    VISSZAJELZÉS AZ ELŐADÓTÓL

    Személyes visszajelzést kapsz a házi feladatokra és minden szakmai kérdésedre. Az előadó így egyéni útmutatást tud adni neked – legyen a célod akár egy meglévő, komplex rendszer skálázása, az architekti gondolkodásmód elsajátítása vagy éppen a fejlesztőcsapatokkal végzett munka megkönnyítése.

AZ ELŐADÓ

Horváth Gergely

Ex. Google Developer & Engineering Manager,
Technical lead @ Hypixel Studios

LinkedIn Profile
  • A Google-nél a világ legnagyobb rendszereit támogatta, ahol…:
    többmilliós kérés/másodperces rendszert felügyelt egyedül, felügyelte és karbantartotta a YouTube-világ legnagyobb egyedi MySQL clusterét, aktív fejlesztője volt a Cloud SQL monolit vezérlőrendszerének és néhány sor Java-kód átírásával több száz TiB RAM-ot és értékes másodperceket spórolt

  • Az Amazonnál az egész (AWS és Amazon.com) céges hálózati felügyeletéért felelős csapatban dolgozott, ahol…:
    az új adatközpontokért felelt és skálázta a meglévőket, automatizálta egyedi hálózati eszközök telepítését és konfigurálását és foglalkozott fegyverekkel őrzött kormányzati adatközpontokkal.

  • Több mint egy évtizede foglalkozik aktívan oktatással és előadásokkal…:
    tanársegéd volt a Műegyetemen, Simonyi Károly Szakkollégiumban több csapatot is vezetett, illetve előadó volt a Simonyi konferencián is és elismert nemzetközi Google-oktató volt.

  • A Riot Games / Hypixel Studiosnál vezetőként több csapatot is épített…:
    jelenleg aktívan mentorál több kollégát is.

Program

  • 01 alkalom
    08.28 18:00-19:30

    Bevezetés

    • Ismerkedés, programterv, elvárások
    • Mit jelent a témakör? Milyen témákat fogunk érinteni?
    • Milyen témákat nem fogunk érinteni, amelyekkel egyébként érdemes foglalkozni?
    • Milyen kihívásokat jelent a high-load?
    • Milyen döntéseket kell meghoznunk a tervezéseknél?
    • NALSD
  • 02 alkalom
    09.02 18:00-19:30

    Skálázható és hibatűrő rendszerek

    • Miért fontos a hibatűrés?
    • Függőleges és vízszintes skálázás
    • CAP theorem
  • 03 alkalom
    09.04 18:00-19:30

    Elosztott rendszerek és terheléselosztás

    • Elosztott rendszerek fontossága a terhelés- és hibatűrésben
    • Terheléselosztás módjai és kapcsolódó elosztott rendszerek
    • Kihívások az elosztott rendszerek építésében
    • Példa és gyakorlatok néhány nem elosztott rendszer darabolására
  • 04 alkalom
    09.09 18:00-19:30

    Kommunikáció a külvilággal

    • Protokollok
    • Formátumok
    • Összehasonlítások és egyéb megoldások
    • Aszinkron kommunikáció
  • 05 alkalom
    09.11 18:00-19:30

    Adatbázisok és adattárolás skálázása

    • Adatbázis típusok
    • Néhány specifikus adatbázis: MariaDB, MongoDB, Cassandra
    • Adatok particionálása, normál formák
    • Elosztott tárolás, replikáció
    • Egyéb tárolási módszerek: data lake, data warehouses és elosztott fájlrendszerek
    • Konzisztencia
    • Adatbázisok függőleges és vízszintes skálázása
    • Monitoring
  • 06 alkalom
    09.16 18:00-19:30

    Gyorsítótárak és stratégiák

    • Típusok
    • Minták
    • Érvénytelenítés
    • Eltávolítás
    • Gyorsítótár frissessége és sebessége
    • Elosztott gyorsítótárak
    • Kihívások
    • Monitoring
  • 07 alkalom
    09.18 18:00-19:30

    Üzenetsorok és aszinkron feldolgozás

    • Batch és stream feldolgozása
    • Map-reduce
    • Adatfolyamok és ETL
    • Szerepek
  • 08 alkalom
    09.30 18:00-19:30

    Microservices

    • Monolith vs. Microservices
    • Darabolási módszerek
    • Skálázhatóság, rugalmasság, karbantartás
    • Vízszintes skálázás a microservice-eknél
    • Terheléselosztás
    • Naplózás és követés
    • Biztonság: data protection, authorization, authentication
  • 09 alkalom
    10.02 18:00-19:30

    Konzisztencia és konszenzus

    • CAP theorem és hatása az elosztott rendszerekre
    • Strong, eventual, causal consistency
    • Paxos, Raft és egyéb konszenzusmódszerek
    • Konszenzus és a hibatűrés
  • 10 alkalom
    10.07 18:00-19:30

    Konténerek és koreográfia

    • Google Borg és hatása
    • Kubernetes, Docker
    • Micro OS, Nomad, barebone
    • Terraform és hybrid cloud
    • Automatikus skálázás
  • 11 alkalom
    10.09 18:00-19:30

    Felügyelet, mérőszámok, riasztás

    • Naplófájlok, rendszer- és alkalmazásmetrikák
    • Valós idejű felügyelet
    • Tárolás
    • Vizualizációk és műszerfalak
    • Riasztási szabályok
    • Fals pozitív és fals negatívok
    • KPI-ok és teljesítménymetrikák
  • 12 alkalom
    10.14 18:00-19:30

    Nagy rendelkezésre állás és katasztrófaelhárítás

    • Nagy rendelkezésre állás koncepciók
    • Hibatűrő stratégiák
    • Katasztrófaelhárítási tervek, megoldások
  • 13 alkalom
    10.16 18:00-19:30

    Mentések és stratégiák

    • On-line, near-line, off-line
    • Depó modellek
    • RPO, RTO
    • Folyamatok, adatok másolása
    • Teljes, részleges, verziókövetés
    • Tömörítés, deduplikáció, titkosítás, multiplexing, refactoring, staging (D2D2T)
    • Limitáló faktorok: idő, energia, pénz
    • Valós idejű és aszinkron replikálás
    • Validálás, időzítés, authentikálás, megbízhatóság
  • 14 alkalom
    10.21 18:00-19:30

    Teljesítményfelügyelet és optimalizálás

    • Szűk keresztmetszetek keresése
    • Load-testingOptimalizálási lehetőségek
    • Optimalizálási lehetőségek
  • 15 alkalom
    11.04 18:00-19:30

    Biztonság a high-load rendszerekben

    • Biztonsági kihívások
    • Autentikáció és jogosultságok
    • Titkosítás és adatvédelem
    • Visszatekintés a katasztrófaelhárításra
    • Felhőbiztonság
  • 16 alkalom
    11.06 18:00-19:30

    Esettanulmányok a high-load rendszerekben

    • Elérhető példák átbeszélése
    • Mit lehet tanulni a jó és a rossz példákból?
    • Team lead nézőpontok
    • Vezetői nézőpontok
  • 17 alkalom
    11.11 18:00-19:30

    Projektek és összefoglalás

    • Résztvevői projektek bemutatása, kérdések
    • A legfontosabb pontok összefoglalása
    • Milyen irányba érdemes haladni tovább?
    • Q&A

TUDJ MEG TÖBBET

A kurzussal kapcsolatos további információkért töltsd ki az űrlapot, és munkatársunk a lehető leghamarabb felveszi veled a kapcsolatot, hogy bővebb tájékoztatást adjon a kurzus részleteiről és áráról.

 
 
 
Jelentkezem