21.12.2022 Views

python_para_desenvolvedores_2ed

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

268 Processamento distribuído

Processamento distribuído

Geralmente a solução para problemas que requerem muita potência

computacional é a utilização de máquinas mais poderosas, porém esta

solução é limitada em termos de escalabilidade. Uma alternativa é dividir os

processos da aplicação entre várias máquinas que se comunicam através de

uma rede, formando um cluster ou um grid.

A diferença básica entre cluster e grid é que o primeiro tem como premissa de

projeto ser um ambiente controlado, homogêneo e previsível, enquanto o

segundo é geralmente heterogêneo, não controlado e imprevisível. Um cluster

é um ambiente planejado especificamente para processamento distribuído,

com máquinas dedicadas em um lugar adequado. Um grid se caracteriza pelo

uso de estações de trabalho que podem estar em qualquer lugar.

O servidor faz o

escalonamento das tarefas

para as estações.

Computacional

A

B

Híbrido

C

D

A

B

C

D

Qualquer máquina pode

atuar como cliente e

servidor.

Os modelos mais comuns de cluster:

▪ computacional.

▪ de recursos.

▪ de aplicação ou híbrido.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!