Buscar

Sistemas Distribuídos

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Unidade I: Fundamentos de Sistemas Distribuídos
7
FACOM – Faculdade de Computação
(Campus I - Marabá)
Sistemas Distribuídos
Definição
Um sistema distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único e coerente [TANENBAUM, 2007].
Um sistema distribuído é aquele no qual os componentes de hardware ou software, localizados em computadores interligados em rede, se comunicam e coordenam suas ações apenas enviando mensagens entre si
[COULOURIS, 2007].
10
Definição
Sistemas distribuídos costumam ser organizados por
meio de:
Camada de Nível Alto;
Camada de Software;
Camada Subjacente.
11
Características
Concorrência: em uma rede de computadores, a
execução concorrente de programas é a norma.
Inexistência de relógio global: quando os programas precisam cooperar, eles coordenam suas ações trocando mensagens.
Falhas	independentes:	todos	os	sistemas	de
computador podem falhar e é responsabilidade dos projetistas de sistema pensar nas consequências das possíveis falhas.
12
Exemplos
INTERNET
13
intranet
ISP
backbone
Enlace de satelite

Computador Desktop:
Servidor:
Enlace de rede:



Exemplos
INTERNET
A	Internet	é
um
conjunto	de
redesde
computadores,
de
muitostipos
diferentes,
interligadas.
A Internet é um sistema distribuído muito grande. Ela permite que os usuários, onde quer que estejam, façam uso de serviços como a World Wide Web, e-mail e transferência de arquivos
14
Exemplos
INTRANET
Outras porções da Internet
Servidor Web
Computadores
Desktop
Servidor de e-mail
Servidor de Arquivo
Roteador/firewall
Servidores de Impressão
Impressão
Outros servidores
15
Rede Local
Servidor de e-mail
Exemplos
COMPUTAÇÃO MÓVEL E UBÍQUA
16
Impressora
Câmera
Internet
Intranet anfitriã
Intranet doméstica
Rede local sem fio
gateway
Telefone móvel
Laptop
Site anfitrião
Exemplos
Computação Móvel e Ubíqua
Computação Móvel é a execução de tarefas de computação, enquanto o usuário está se deslocando de um lugar a outro ou visitando lugares diferentes de seu ambiente usual.
Computação	Ubíqua	é	a	utilização	de	vários
dispositivos	computacionais	pequenos	e
baratos,	que	estão	presentes	nos	ambientes
físicos dos usuários.
17
Exemplos
COMPUTAÇÃO EM NUVEM
18
Compartilhamento de
Recursos e a Web
Compartilhamos recursos de hardware (como impressoras), recursos de dados (como arquivos) e recursos com funcionalidade mais específica (como os mecanismos de busca).
O termo serviço é usado para designar uma parte distinta de um sistema de computador que gerencia um conjunto de recursos relacionados e apresenta sua funcionalidade para usuários e aplicativos.
19
Compartilhamento de
Recursos e a Web
A World Wide Web (WWW) é um sistema em evolução para a publicação e para o acesso a recursos e serviços pela Internet.
A web é um sistema aberto: ela pode ser ampliada e implementada de novas maneiras, sem perturbar a funcionalidade existente.
A	web	é	aberta	no	que	diz	respeito	aos	tipos	de
recursos	que	nela	podem	ser	publicados	e
compartilhados.
20
Compartilhamento de
Recursos e a Web
A web é baseada em três componentes tecnológicos padrão principais:
HTML (HyperText Markup Language) que é uma linguagem para especificar o conteúdo e o leiaute de páginas de forma que elas possam ser exibidas pelos navegadores web.
URLs (Uniform Resource Locators), que identificam os documentos e
outros recursos armazenados como parte da web.
Uma arquitetura de sistema cliente-servidor, com regras padrão para interação (o protocolo HTTP – HyperText Transfer Protocol), por meio das quais os navegadores e outros clientes buscam documentos e outros recursos dos servidores web.
21
Compartilhamento de
Recursos e a Web
22
Internet
Navegadores
Servidores Web
www.google.com
www.ufpa.br
Protocolos
faq.html
http://www.w3.org/standards/faq.html#conformance
http://www.google.comlsearch?q=obama
http://www.ufpa.br/
www.w3c.org
Sistema de arquivos
de www.w3c.org
Desafios
Heterogeneidade
A heterogeneidade (isto é, variedade e diferença)
se aplica aos seguintes aspectos:
redes
hardware de computador
sistemas operacionais
linguagens de programação
implementações de diferentes desenvolvedores
23
Desafios
Heterogeneidade
Middleware:	Camada
de	Software
que	fornece
uma	abstração
assim
como	o
de	programação,
da
heterogeneidade
das	redes,
mascaramento
hardware e etc.
Ex: CORBA
Heterogeneidade	e	migração	de	código:
termo
usadopara
se
referir	aocódigoquepode
ser
enviadode
um
computadorparaoutro	e
ser
executado no destino.
Ex: Applets Java
24
Desafios
Sistemas Abertos
Caracterizados pelo fato de suas principais interfaces serem publicadas;
Os sistemas distribuídos abertos são baseados na estipulação de um mecanismo de comunicação uniforme e em interfaces publicadas para acessos aos recursos compartilhados; (RFCs)
distribuídos	abertos	podem	ser
partir	de	hardware
possivelmente	de
e		software diferentes
Os	sistemas construídos	a heterogêneo, fornecedores.
25
Desafios
Segurança
Trata da segurança dos recursos de informação que se
tornam	disponíveis	e	são	mantidos	em	sistemas
distribuídos e que têm um alto valor intrínseco para
seus usuários.
Pilares da Segurança da Informação
Confidencialidade
Integridade
Disponibilidade
Problemas ainda em discussão
Ataque de negação de serviço
Segurança de código móvel
26
Desafios
Escalabilidade
Um sistema é descrito como escalável se permanece eficiente quando há um aumento significativo no número de usuários.
Apresenta os seguintes desafios:
Controlar o custo dos recursos físicos
Controlar a perda de desempenho
Impedir que os recursos de software se esgotem
Evitar gargalos de desempenho
27
Desafios
Tratamento de Falhas
Detecção de Falhas
Mascaramento de Falhas
Ex.: Retransmissão de mensagens.
Tolerância a Falhas
Ex.: Falha apresentada pelo Navegador Web
Recuperação de Falhas
Redundância
Ex.: Duas Rotas entre dois roteadores, DNS, Banco de Dados Distribuídos.
28
Desafios
Concorrência
É a possibilidade de que vários clientes tentem acessar um recurso compartilhado ao mesmo tempo.
Ex: A estrutura de dados que registre lances de
um leilão
Para	que	um	objeto	mantenha	coerência	em
suas	operações
um	ambiente	concorrente,
devem ser sincronizadas;
Ex: Semáforos
29
Desafios
Transparência: o objetivo é tornar certos aspectos da distribuição invisíveis para um usuário final ou para um programador de aplicativos, para que este se preocupe apenas com o projeto de seu aplicativo em particular.
30
Transparência
Descrição
Acesso
Oculta diferençasnarepresentaçãode dadose no modode
acesso a umrecurso
Localização
Ocultaolugaremque umrecurso estálocalizado
Migração
Ocultaque umrecursopode ser movidopara outralocalização
Relocação
Ocultaque umrecursopode ser movidoparaumaoutralocalizaçãoenquantoemuso
Replicação
Ocultaque umrecursoéreplicado
Concorrência
Ocultaque umrecursopode ser compartilhado pordiversosusuáriosconcorrentes
Falha
Ocultaafalhae arecuperaçãode umrecurso.
Exercícios
Cite cinco tipos de recurso de hardware e recursos de dados ou software que possam ser compartilhados com sucesso. Dê exemplos práticos de seu compartilhamento em sistemas distribuídos.
Quais são as vantagens e desvantagens das tecnologias básicas HTML, URLs e HTTP para navegação em informações? Alguma dessas tecnologias é conveniente como base para a computação cliente-servidor em geral?
3) Liste os três principais componentes de software que podem falhar quando um processo cliente invocar um método em um objeto servidor. Dê um exemplo de falha para cada caso. Sugira a maneira como os componentes podem ser feitos para tolerar as falhas uns dos outros.
31

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando