Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é...
Transcript of Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é...
![Page 1: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/1.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Programação de Sistemas
Distribuídos e Concorrência
Aula 4
Prof: Carlos Eduardo de Carvalho Dantas
http://carloseduardoxp.wordpress.com
“Ensinar é aprender duas vezes.” – Joseph Joubert
![Page 2: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/2.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Computação paralela. Se for possível criar
programas onde este pode executar sem muitas
modificações em sistemas distribuídos que parecem
ser idênticos a sistemas não-distribuídos, será bem
mais fácil.
![Page 3: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/3.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Para aumentar a transparência de distribuição que
está faltando em sistemas operacionais de rede. Em
outras palavras, o middleware visa melhorar a visão
do sistema simples, que um sistema distribuído deve
ter.
![Page 4: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/4.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Um erro facilmente feito é assumir que um sistema
distribuído como operacional em uma organização,
deve ser espalhado por toda a organização. Na
prática, vemos sistemas distribuídos sendo
instalados ao longo do caminho que uma
organização é dividida. Neste sentido, pode ter um
sistema distribuído de apoio aos processos de
backoffice, bem como um sistema separado de front-
end.
![Page 5: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/5.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Transparência de distribuição é o fenômeno pelo qual
os aspectos de distribuição em um sistema estão
ocultos dos usuários e aplicações. Exemplos incluem
o acesso transparência, a transparência de
localização, transparência de migração,
transparência de localização, a transparência de
replicação, transparência de concorrêcia,
transparência de falha, e a transparência de
persistência
![Page 6: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/6.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Em geral, é impossível detectar se um servidor é
realmente caiu, ou se está simplesmente lento na
resposta. Consequentemente, um sistema pode ter
que reportar que o sistema está fora, mas às vezes
ele está apenas lento.
![Page 7: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/7.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Visando o mais alto grau de transparência pode levar
a uma considerável perda de desempenho que os
usuários não estão dispostos a aceitar.
![Page 8: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/8.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Um sistema distribuído aberto oferece serviços de
acordo com regras claramente definidas. Um sistema
aberto é capaz de facilmente interoperar com outros
sistemas abertos, mas também permite que
aplicativos sejam facilmente portados entre diferentes
implementações do mesmo sistema
![Page 9: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/9.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Um sistema é escalonável no que diz respeito a
qualquer um dos componentes do seu número,
dimensão geográfica, ou o número e tamanho das
áreas administrativas, se pode crescer em uma ou
mais destas dimensões, sem uma perda inaceitável
de desempenho.
![Page 10: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/10.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Escalabilidade pode ser alcançado através da
distribuição, replicação e caching
![Page 11: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/11.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
A organização virtual (VO) define um grupo de usuários /
aplicações que têm acesso a um específico grupo de
recursos, que podem ser distribuídos através de muitos
computadores diferentes, pertencentes a diversas
organizações. Com efeito, um VO define quem tem acesso a
quê. Isso também sugere que os recursos devem manter uma
conta de usuários estrangeiros juntamente com os seus
direitos de acesso. Isso muitas vezes pode ser feito usando os
mecanismos de controle de acesso padrão (como os bits rwx
em UNIX), embora os usuários estrangeiros podem precisar
ter uma conta especial. O último complica consideravelmente.
![Page 12: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/12.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Qualquer situação em que ocorreu entrada e saída
física não pode ser reposto. Por exemplo, se o
processo de produção tenha sido impresso alguma
saída, a tinta não pode ser removida a partir do
papel. Além disso, num sistema que controla a
qualquer tipo de processo industrial, é geralmente
impossível de desfazer o trabalho que tem sido feito.
![Page 13: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/13.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
A coordenadora precisa simplesmente assegurar
que, se uma das transações aninhadas aborta, que
todas as outras subtransações abortem também. Da
mesma forma, deve coordenar a que todos eles
comitem a transação quando cada um puder.
Finalmente, uma transação aninhada deve esperar
para comitar até que seja solicitado a fazer isso pelo
coordenador.
![Page 14: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/14.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Pense na transparência de migração. Em muitos sistemas
pervasivos, componentes são móveis e terá que restabelecer
conexões quando se deslocam de um ponto de acesso para
outro. Preferêncialmente, tais transmissões deve ser
completamente transparente para o utilizador. Da mesma
forma, pode-se argumentar que muitos outros tipos de
transparências devem ser suportados também. No entanto, o
que não deve ser escondido para o usuário é a possibilidade
de acessar recursos que estão diretamente ligados ao
ambiente atual do usuário.
![Page 15: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/15.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Correção Exercícios
Há alguns outros exemplos de sistemas pervasivos. Pense em
redes em malha sem fio de larga nas cidades ou bairros que
prestam serviços tais como acesso à Internet, mas também
formam a base para outros serviços como um sistema de
notícias. Existem sistemas de monitoramento habitat (como
em resorts da vida selvagem), prisões eletrônicas por
criminosos, que são continuamente monitoradas, em larga
escala de sistemas integrados de esportes, sistemas de
escritório, implantação de emblemas ativos para saber sobre o
paradeiro de seus funcionários, e assim por diante.
![Page 16: Aula 4 - carloseduardoxp.files.wordpress.com · Em geral, é impossível detectar se um servidor é realmente caiu, ou se está simplesmente lento na resposta. Consequentemente, um](https://reader031.fdocuments.net/reader031/viewer/2022020415/5c101ecd09d3f23e618c0fc7/html5/thumbnails/16.jpg)
2013-2 Programação de Sistemas Distribuídos e Concorrência
Referências Bibliográficase
[1] Sistemas distribuídos – princípios e paradigmas.
Cap 1