Sistema Distribuído
Um sistema distribuído é um software que corre sobre uma coleção de nós computacionais independentes, separados fisicamente mas ao mesmo tempo conectados entre si . Cada nó individual contém um subconjunto de software do sistema operativo associado, apresentando-se aos utilizadores como um sistema único e coerente, apresentando as seguintes caraterísticas:
-Comunicação através de mensagens
-Concorrência
-Partilha de recursos
-Sistema assíncrono
-Falha independentes
-Heterogeneidade
Existem vários exemplos de sistemas distribuídos entre eles são:
- Motores de pesquisa
- Sistemas financeiros
- Jogos Online
- Redes Sociais e plataformas idênticas
Os exemplos apresentados anteriormente têm máquinas por todo o mundo, com acessos concorrentes e muitos desafios nos processos de comunicação (como por exemplo: hora do sistema — devido à distribuição geográfica, possíveis falhas de componentes, etc). A comunicação é simplesmente feita com base em mensagens.
Alguns exemplos de plataformas:
Hadoop — é uma plataforma de software em Java de computação distribuída voltada para clusters e processamento de grandes volumes de dados.
Ceph — é uma plataforma que implementa o armazenamento de objetos em um único nó distribuído na rede e facilita o armazenamento de objetos no nível de bloco, arquivo e objeto.
Hydra — é um sistema de processamento de tarefas distribuídas que nunca teve o mesmo tipo de tração que o software apoiado por uma organização como a Apache Foundation.