Improving tail latency of interactive cloud microservices through management of background tasks.

Detalhes bibliográficos
Ano de defesa: 2021
Autor(a) principal: FIREMAN, Daniel Lacet de Faria.
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Campina Grande
Brasil
Centro de Engenharia Elétrica e Informática - CEEI
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
UFCG
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/21345
Resumo: O aumento nos casos de uso com requisitos rígidos de latência, por exemplo, e-commerce e gerenciamento de dados em tempo real, tem pressionado para um maior controle sobre a variabilidade de desempenho. Isso ocorre porque mesmo picos infrequentes podem ser inaceitáveis, pois podem dominar o tempo que a leva resposta para chegar ao usuário final em implantações de nuvem multicamadas modernas. Neste contexto, a execução descoordenada de tarefas de manutenção, por exemplo, coleta de lixo e compactações de log, pode levar a uma degradação de desempenho inaceitável. Mesmo que pesquisadores e profissionais tenham trabalhado muito para melhorar o impacto não determinístico dessas tarefas no desempenho dos serviços em nuvem, este impacto ainda não é aceitável quando garantias de desempenho estritas são exigidas. Além disso, as soluções propostas são específicas a sistemas, aplicações, carga ou tarefas. O objetivo desta pesquisa é eliminar o impacto negativo de uma classe representativa de tarefas no desempenho de sistemas de nuvem. Para tanto, começamos propondo uma taxonomia para essas tarefas com base em seu gatilho e viabilidade de controle. Em seguida, definimos formalmente a ampla classe de tarefas interativas, compostas de atividades controláveis acionadas pelo processamento de requisições. Além disso, propomos o Controlador de Tarefas de Segundo Plano (BTC), uma solução totalmente distribuída para eliminar o impacto negativo de tarefas interativas em microsserviços em nuvem. O BTC atinge o objetivo evitando que o processamento de requisições enquanto executa tarefas. Realizamos simulações e experimentos de medição para avaliar a eficácia do BTC para lidar com o impacto do coletor automático de lixo, uma causa bem conhecida da degradação do desempenho dos serviços de nuvem. Os resultados mostram que o BTC elimina efetivamente o impacto do coletor de lixo em cargas de trabalho reais e sintéticas; e microsserviços de produção e fictícios. Além disso, a utilização do BTC leva a uma perda de capacidade proporcional à frequência e duração das tarefas, o que permite estimar o aumento de capacidade necessário para lidar com essa perda.