Capítulo 8. Dispersão/Colheita
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Até agora examinamos sistemas que replicam para escalabilidade em termos do número de solicitações processadas por segundo (o padrão replicado sem estado), bem como escalabilidade para o tamanho dos dados (o padrão de dados fragmentados). Neste capítulo, apresentamos o padrão scatter/gather, que usa replicação para escalabilidade em termos de tempo. Especificamente, o padrão scatter/gather permite obter paralelismo no atendimento de solicitações, permitindo atendê-las significativamente mais rápido do que seria possível se tivesse que atendê-las seqüencialmente.
Tal como os sistemas replicados e fragmentados, o padrão de dispersão/recolha é um padrão de árvore com uma raiz que distribui pedidos e folhas que processam esses pedidos. No entanto, em contraste com os sistemas replicados e fragmentados, os pedidos de dispersão/recolha são simultaneamente distribuídos por todas as réplicas do sistema. Cada réplica faz uma pequena quantidade de processamento e depois devolve uma fração do resultado à raiz. Em seguida, o servidor raiz combina os vários resultados parciais para formar uma única resposta completa à solicitação e envia essa solicitação de volta ao cliente. O padrão scatter/gather é ilustrado na Figura 8-1.