Afinal o que é um sistema distribuído?
Os sistemas distribuídos estão em todo o lugar, ou melhor, acessíveis a partir de qualquer lugar. Segundo Tanenbaum, um sistema distribuído é um conjunto de computadores independentes entre si (e até diferentes), ligados através de uma rede de dados, que se apresentam aos utilizadores como um sistema único e coerente.
Conheça alguns exemplos de sistemas distribuídos, características e também os principais desafios na construção de sistemas distribuídos.
No mundo da tecnologia actual, são vários os exemplos de sistemas distribuídos. Alguns que se destacam:
- Sistemas de pesquisas (motores de busca)
- Sistemas financeiros
- Jogos Online
- Redes Sociais e plataformas idênticas
- etc.
Todos os sistemas apresentados anteriormente têm máquinas dispersas por todo o mundo, com acessos concorrentes e muitos desafios nos processos de comunicação (ex. hora do sistema – devido à distribuição geográfica, possíveis falhas de componentes, etc). A comunicação é simplesmente feita com base em mensagens.
Mas há outros desafios na implementação de sistemas distribuídos que se destacam como é o caso da:
- Heterogeneidade
- Sistemas Operativos diferentes
- Tipos de Redes de Comunicação variadas
- Hardware diferente
- Sistemas Abertos
- Para que os sistemas “falem” entre eles é importante que estes sejam abertos pois só assim será também mais fácil a extensão/re-implementação.
- Segurança
- Um factor fundamental para a transmissão de informação entre sistemas. A encriptação pode ser usada para a comunicação de mensagens na rede
- Escalabilidade
- Um sistema distribuído deve ser escalável para que possam ser adicionados novos sistemas de uma forma simples, com custos reduzidos e sem impacto no serviço.
- Tratamento de Falhas
- Qualquer processo, computador ou rede pode falha de forma independente: A acontecer, tal não deve afectar o serviço.
- Concorrência
- A presença de múltiplos utilizadores num sistema distribuído pode significar o acesso/modificação simultâneo de um recurso.
- Qualidade de Serviço (QoS)
- O QoS está relacionado com a fiabilidade do serviço.
Nos próximos artigos iremos abordar algumas tecnologias/técnicas usadas na construção de sistemas distribuídos.
Este artigo tem mais de um ano
Há uma coisa sobre a Apple que se tem falado pouco. Fala-se do iPhone, do Apple Watch, do Apple Car, mas não do iEmpire – 1000 milhões de dólares em data-centers só em 2014, para trazer os conteúdos para mais próximo do consumidor e mais rápido. É muita massa.
http://www.bloomberg.com/news/articles/2015-06-08/apple-said-to-build-high-speed-network-for-fast-content-delivery
ok, é um exemplo válido de um sistema distribuído (data-centerS) 🙂
A apple comprou este ano a foundationdb, que é um tipo de base de dados distribuída. Pode estar relacionado.
Sim sr, já tinha saudades de um bom tema à Pedro Pinto.
Espero a continuação do mesmo.
eh eh eh, o mercado está diferente.
Parece-me que existe aqui uma certa confusão, entre um sistema distribuído e uma aplicação web. Num sistema distribuído tem de existir uma aplicação local instalada, com acesso a dados comuns, que estão noutro lugar, por exemplo. Não é independente do sistema operativo, tem de existir uma compilação para o SO . Uma aplicação web, é verdadeiramente independente do SO. Apenas precisa de um browser, seja em que SO for.
” computadores independentes entre si” e com diferentes sistemas operativos.
Bons artigos Pedro Pinto.
Isto dos sistemas distribuídos assemelha-se à ideia que podemos/devemos construir aplicações ‘as a service’? Como por exemplos serviços Cloud? E aí há diferenças entre os clientes? Como por exemplo Nativo vs Web
Um exemplo de sistema distribuído são os torrents e as cryptomoedas..
No Mestrado/Pós Graduação tinha duas cadeiras de sistemas distribuidos. Na primeira eram apresentados todos os fundamentos e na segunda era apresentada os mecanismos de fiabilidade, tolerância a falhas, QoS, etc
Na altura profissionalmente era uma area que profissionalmente estava intimamente ligado.
Os professores diziam que a primeira cadeira era para quando tudo corria bem e a segunda para quando tudo corria mal.
Será que tivemos o mesmo prof? Tolerancia a Faltas distribuidas ?
eh eh eh
Obrigado pelo artigo é excelente.
Gostaria que ajudassem se poder, sou estudante de informática especificamente engenharia de rede de computadores do quarto ano de faculdade porém é o último e estou sem ideias na escolha de tema para monografia. Se tiverem sugestões de temas agradecia o favor
isso tudo facilita o aprendizado, principalmente de iniciantes na área .
O Torrent, é orientado por conexão P2P que é um elemento de sistemas distribuídos, é uma arquitetura de redes de computadores onde cada um dos pontos (nós) da rede funciona tanto como cliente quanto como servidor, sem a necessidade de um servidor central, que permite permite compartilhamentos de serviços e dados. O computador/dispositivo deve ter instalado o programa para virar um semeador.