@PHDTHESIS{ 2023:21898622, title = {Contribui??es para escalabilidade em replica??o m?quina de estados}, year = {2023}, url = "https://tede2.pucrs.br/tede2/handle/tede/10975", abstract = "O uso crescente de servi?os online tem gerado a necessidade de arquiteturas que ofere?am alta disponibilidade e desempenho. No contexto de alta disponibilidade, a t?cnica de Replica??o M?quina de Estados (RME) ? uma solu??o amplamente utilizada em diversos setores da computa??o, como computa??o em nuvem, sistemas de banco de dados, mecanismos de sincroniza??o e comunica??o confi?vel. O conceito de RME ? simples: como todas as r?plicas iniciam com um mesmo estado e executam comandos deterministicamente na mesma ordem, as mesmas mudan?as de estado ap?s a execu??o de cada comando s?o realizadas entre todas as r?plicas do sistema, garantindo consist?ncia forte. No entanto, esse mesmo modelo b?sico de funcionamento da RME limita o seu desempenho. Para aumentar a escalabilidade da t?cnica de RME foram propostas diferentes estrat?gias. Uma poss?vel estrat?gia para obter ganhos com a t?cnica ? atrav?s do melhor aproveitamento dos m?ltiplos n?cleos de processamento comumente dispon?veis em servidores modernos. Diferentes arquiteturas paralelas de RME foram formuladas com solu??es que introduzem concorr?ncia na ordena??o e execu??o de comandos, considerando que requisi??es n?o conflitantes podem ser processadas em paralelo sem afetar a consist?ncia forte. Protocolos de consenso generalizado trabalham com a mesma no??o de conflito: comandos que n?o conflitam n?o necessitam de ordena??o durante o consenso. Nesta primeira parte do trabalho prop?e-se, o uso de informa??es de conflito provenientes do consenso generalizado para a subsequente execu??o paralela de comandos na RME. Esta proposta, ainda n?o encontrada na literatura, foi descrita, implementada e avaliada, mostrando ganhos de desempenho. Outra estrat?gia utilizada para aumentar a escalabilidade da t?cnica de RME ? com o particionamento do estado, permitindo que parti??es trabalhem de forma independentes. Al?m da ordena??o de comandos para cada parti??o, comandos multi-parti??o necessitam de ordena??o entre as parti??es envolvidas. Neste contexto o multicast at?mico ? uma abstra??o fundamental, pois captura os requisitos de confiabilidade e ordena??o. ByzCast foi o primeiro protocolo de multicast at?mico tolerante a falhas bizantinas. Para reusar solu??es de ordena??o para o caso bizantino, ByzCast faz uso de uma estrutura em ?rvore para dissemina??o de mensagens entre as parti??es envolvidas, sendo cada parti??o implementada por um conjunto de r?plicas atuando em consenso bizantino. Na segunda parte deste trabalho estendemos ByzCast de um protocolo de multicast at?mico tolerante a falhas bizantinas para uma RME particionada com toler?ncia a falhas bizantinas. Para tal, definimos e discutimos diferentes estrat?gias de tratamento da requisi??o e do retorno da resposta aos clientes da RME.", publisher = {Pontif?cia Universidade Cat?lica do Rio Grande do Sul}, scholl = {Programa de P?s-Gradua??o em Ci?ncia da Computa??o}, note = {Escola Polit?cnica} }