Descrição:
O desempenho e a escalabilidade são fatores chave no sucesso e adoção de serviços de Internet como a Google, Amazon, Microsoft, Facebook ou Netflix.
O objetivo desta UC é dotar os alunos de capacidades e ferramentas para analisar o desempenho e escalabilidade de sistemas de larga escala de um modo geral, com ênfase em sistemas baseados em Computação em Nuvem.
Durante a UC os alunos irão aprender a identificar os fatores que limitam a escalabilidade e desempenho de um sistema, através da monitorização e modelação do comportamento do sistema. Serão abordadas técnicas de desenho e conceção de benchmarks e simulações e como interpretar os resultados obtidos através da adequada representação das métricas obtidas. Os conhecimentos e técnicas adquiridas permitirão aos alunos desenhar sistemas escaláveis e de alto desempenho na nuvem, bem como analisar e melhorar sistemas existentes. Estes serão postos em prática através de casos de estudo concreto que explorar técnicas de Machine Learning, heterogeneidade de recursos e outras técnicas para prever comportamento futuro, fazer planeamento de capacidade e desenvolver sistemas auto adaptáveis.
No final da UC, os alunos deverão ser capazes de:
● Conceber sistemas tendo em conta o desempenho e a escalabilidade e o desempenho
● Desenhar benchmarks para aferir corretamente o comportamento do sistema sobre várias cargas
● Medir, identificar e resolver limitações de desempenho (bottlenecks)
● Prever comportamento futuro para planeamento de capacidade
● Simular novos sistemas para aferir o seu desempenho antes da implementação e simular sistemas existentes para aferir o impacto de potenciais modificações.
Email:
miguel.marques.matos@tecnico.ulisboa.pt