Cod: ARC-016
Durata: 25 ore
Durata: 25 ore
Descriere
a:2:{s:4:"TEXT";s:1538:"Cursul nostru este un punct de start pentru toti cei care vor sa invete cum sa proiecteze sisteme cloud. Principalul obiectiv este sa iti ofere o introducere in elementele specifice si provocarile asociate cloud-ului precum si principalele instrumente pe care le ai la dispozitie. Vom incepe cu o prezentare a istoriei si tipurilor de cloud impreuna cu principalele tehnologii care permit cloud computing. Vom trece apoi mai departe catre proiectarea de aplicatii cloud.Ne vom uita la cum sa construim retele virtuale in cloud, planificarea points of presence, organizarea traficului inbound & outbound si livrarea continutului. Vei invata cum sa implementezi elementele functionale ale aplicatiei – atat optiunile server-based cat si cele serverless. Ne vom uita la cum sa lucram cu persistent data, cum sa selectm DBMS pentru diferite situatii si vom finaliza discutia legata de elementele pe care le putem folosi ca sa dezvoltam aplicatii cloud rezolvand o serie de sarcini de integrare.
Mai mult decat atat vei descoperi cum sa aplici tactici care sa te ajute sa obtii o aplicatie scalabila, performanta, sigura si cu toleranta la erori. Automatizarea este extrem de importanta pentru ca un sistem cloud sa opereze in mod eficient. Providerii IaaS/PaaS ne permit sa asiguram si sa coordonam in mod automat resurse cloud, sa setam monitorizarea acestuia si sa reactionam la schimbari sau erori ale aplicatiei noastre. La finalul cursului vom vorbi si despre cele mai importante scenarii de automatizare.";s:4:"TYPE";s:4:"html";}
Subiecte curs
a:2:{s:4:"TEXT";s:2467:"Elemente fundamentale de cloud computing- Ce este cloud-ul si unde este localizat?
- Tehnologii care permit cloud computing
- Tipuri de cloud
- Modele noi de servicii: IaaS, PaaS, SaaS
- Economia cloud
Principiile proiectarii de aplicatii cloud
- O aplicatie cloud minimala
- Elemente care ne permit sa construim aplicatii cloud
- Tipuri de elemente: resurse, stocare, infrastructura de retea, managed services
- Aplicatii cloud-native
- Multitenancy
- Provocari legate de design: comunicare, scalabilitate, handling the state
Limite in designul de aplicatii
- Tipuri de trafic, retele virtuale
- Routing cu retele cloud private virtuale si fara ele
- Regions & points of presence
- Managementul external requests: dynamic & static content
- Managementul internal requests
- Modele de traffic payment
- Billing structure
Designing computations
- “Classic” servers, “elastic” servers, application runtime environments, containerization, serverless computations
- Main patterns: scalable monolith, composite application
Proiectarea de persistent data stores
- Capacitati de stocare de baza: block, object si file storage
- Factori cheie in evaluarea metodelor de stocare de date: data model, consistency, fault tolerance si availability, load
- Optiuni DB disponibile: relational, key-value, column families, etc
Rezolvarea de sarcini legate de coordonare si integrare
- Provocari legate de remote communication
- Comunicare sincrona si asincrona. Brokers, queues, Kafka, API gateways & Service Mesh
Automatizare
- Prezentarea capacitatilor de automatizare pentru design si operare
- Selectarea metricilor
Abordarea system qualities
- Network performance, traffic locality
- Security, fault tolerance
- Prevenirea cascading failures
Metode de cloud application design
- The Twelve-factor App, Well-Architected Framework
Obiective
- Intelegerea cloud computing si a fundamentelor economice si tehnologiilor din spate
- Cum sa planifici o structura high-level de cloud apps (retea, resurse si stocare), pastrand echilibrul intre costuri si timpul de implementare
- Cum sa dezvoltam sisteme sigure, flexibile si scalabile
- Identificarea potentialelor bottlenecks erori
- Pregatirea pentru cursuri mai avansate pe aceasta zona (high-load systems, Big Data, distributed DBs)
Public tinta
- Arhitecti software
- System Designers
- Technical Leads / Senior Developers
- Cloud Project Managers
- Business Analysts
- Analysts
Cerinte curs
- Cunostinte de baza in ceea ce priveste arhitectura aplicatiilor
- Cunostinte de baza in TCP/IP networks, principii de virtualizare