SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
ARQUITETURA DE SOFTWARE
•Definição (vários componentes, sua organização e como
interagem)
•Importante (separar aplicações das camadas subjascentes
provendo uma camada de middleware)
•Tornar o middleware adaptativo)
•Adaptabilidade (monitorar seu próprio comportamento e
tomar decisões) – sistemas autonômicos
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ESTILOS ARQUITETÔNICOS
•Formado em termos de componentes, do modo como esses
componentes estão conectados uns aos outros, dos dados
trocados entre componentes e, por fim, da maneira como
esses elementos são configurados em conjunto para formar
um sistema.
•Componente – é uma unidade modular com interfaces
requeridas e fornecidas bem definidas que é substituível
dentro de seu ambiente.
•Conector - em geral descrito como um mecanismo da
comunicação ou da cooperação entre componentes
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ESTILOS ARQUITETÔNICOS
Arquitetura em camadas
•Componentes organizados em camadas, onde
componentes da camada Li pode chamar métodos da
camada Li-1, mas não o contrário;
Arquiteturas baseadas em objetos
•Objetos correspondem às definições de componentes, que
são conectados por meio de chamadas de procedimento
remotas;
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ESTILOS ARQUITETÔNICOS
(A) EM CAMADAS E (B) BASEADO EM OBJETOS
ESTILOS ARQUITETÔNICOS
Arquiteturas centradas em dados
•Processos se comunicam por meio de repositório comum
(passivo ou ativo);
Arquiteturas baseadas em eventos
•Processos se comunicam por meio de propagação de
eventos que podem transportar dados;
•Sistemas Publicar/Subscrever;
•São referencialmente desacoplados.
•Espaços compartilhados de dados, com arquiteturas
baseadas em eventos juntamente com centradas em
dados.
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ESTILOS ARQUITETÔNICOS
(A) BASEADOS EM EVENTOS E
(B) CENTRADAS EM DADOS
ARQUITETURAS CENTRALIZADAS
Cliente-servidor básico
•Servidor
•Cliente
•Comportamento de requisição resposta
Protocolos
•Simples sem conexão (UDP) para redes locais
•Problemas de garantia e Idempontência
•Protocolo confiável orientado a conexão
SISTEMAS DISTRIBUÍDOS - Arquiteturas
Arquiteturas Centralizadas
• Modelo Cliente-Servidor
• Problemas: Orientado ou não-orientado a conexão
(TCP ou UDP)?
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS CENTRALIZADAS
ARQUITETURAS CENTRALIZADAS
Cliente-servidor básico
•Camadas de Aplicação
•Divididas em 3 níveis:
•Nível de interface de usuário
•Contém tudo o que é necessário para fazer interface
com o usuário
•Nível de processamento
•Contém as aplicações
•Nível de dados
•Gerencia os dados propriamente ditos
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS CENTRALIZADAS
ORGANIZAÇÃO EM 3 CAMADAS DE APLICAÇÃO
UMA MECANISMO DE BUSCA DA INTERNET
ARQUITETURAS CENTRALIZADAS
Distribuição Física
Arquitetura de duas divisões (físicas) é distribuída da
seguinte forma:
1. Uma máquina cliente que contém apenas os
programas que implementam o nível (ou parte do
nível) de interface de usuário
2. Uma máquina do servidor que contém todo o resto,
ou seja, os níveis de processamento e de dados.
SISTEMAS DISTRIBUÍDOS - Arquiteturas
•Alternativas de distribuição
•Cliente Magro e Cliente Gordo
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS CENTRALIZADAS
ARQUITETURAS MULTIDIVIDIDAS.
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
•Arquitetura de três divisões (físicas)
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS CENTRALIZADAS
ARQUITETURAS MULTIDIVIDIDAS.
ARQUITETURAS CENTRALIZADAS
Distribuição vertical
•Componentes logicamente diferentes em máquinas
diferentes;
Fragmentação vertical (BD distribuído)
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Distribuição horizontal
•Um cliente ou servidor pode ser subdividido em partes
logicamente equivalentes, mas cada parte está operando
em sua própria porção do conjunto de dados,
equilibrando a carga.
•Ex.: Peer to Peer (servidor e cliente ao mesmo tempo,
também chamada “servente”)
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Distribuição horizontal
•Rede de Sobreposição (uma rede na qual os nós são
formados pelos processos e os enlances representam os
canais de comunicação possível)
•Estrutura
•Não Estruturadas
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Estruturado
Tabela Hash Distribuída –
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Estruturado
Sistema Chord
Gerenciamento de associação de grupo
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Estruturado
Sistema Chord
Gerenciamento de associação de grupo
Ao entrar no sistema, o nó recebe um identificador aleatório
id.
• Pesquisa em id retorna o endereço de rede succ(id).
• Novo no contata succ(id) e seu predecessor e se insere
no anel.
• Na partida, o no envia os dados para o succ(id).
Sair – nó informa sua saída ao predecesso e sucessor e
transfere seus itens de dados para succ(id)
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Estruturado
Rede de Conteúdo endereçável (Content Addressable
Network)
Roteamento
baseando em
posicionamento
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Não Estruturado
Algoritmos aleatório para construir rede de sobreposição.
Rede de sobreposição parecida com um gráfico aleatório
Visão Parcial
Thread Ativo (se comunica com outro nó e seleciona esse
nó de acordo com sua visão parcial corrente)
Thread Passivo (nó passivo também formará sua visão
parcial)
Grau interno de um nó (conjunto de nós cujo a suas visões
parciais se refere a P)
Evitar gargalo de nós ou nó comum
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Não Estruturado
Gerenciamento de Topologia de redes de sobreposição
Abordagem em duas camadas
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Não Estruturado
Gerenciamento de Topologia de redes de sobreposição
Função de ordenação (simples – distância crescente de um nó)
Topologia Toro -> tempo X camada não etruturada
Proximidade semântica
Redes Semânticas de sobreposição
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS DESCENTRALIZADAS
Peer-to-peer Não Estruturado
Superpares
Crescimento da rede
Nó que mantém índice
Relação cliente superpar fixa
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
•Sistemas de servidor de borda (Internet)
•Sistemas colaborativos (Torrent)
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS HÍBRIDAS
•Rede Colaborativa de distribuição de conteúdo Globule
•Colaboram com réplicas de páginas
•Componentes do servidor:
•Um componente que pode redirecionar requisições de clientes a
outros servidores
•Um componente para analisar padrões de acesso.
•Um componente para gerenciar as replicações de páginas web
•Servidor de origem
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS HÍBRIDAS
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS HÍBRIDAS
BitTorrent
Peer-to-peer de transferência de arquivo(download)
Reciprocidade (ajudar outras com download).
arquivos .torrent, contém as informações necessárias para
transferir um ou mais arquivos específicos
Rastreador – servidor que está mantendo uma
contabilidade precisa de nós ativos que tem o arquivo
requisitado
O gargalo dos servidores são os rastreadores
Redução de taxa para quem não colabora
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS HÍBRIDAS
FUNCIONAMENTO DO BITTORRENT
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS HÍBRIDAS
FUNCIONAMENTO DO BITTORRENT
•Onde o Middleware se encaixa?
•Entre aplicações e plataformas distribuídas, com
finalidade de proporcionar um grau de transparência à
distribuição de dados, processamento e controle.
•Middlewares normalmente seguem estilos arquitetônicos
específicos:
•CORBA (baseado em objetos);
•Tibico (baseado em eventos)
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS VERSUS MIDDLEWARE
•Simplifica os projetos de aplicação
•Não é 100% adaptável aos requisitos da aplicação
•Seria necessário configurar, adaptar e personalizar
•Introdução de Políticas e Mecanismo
•Mecanismo modificando o comportamento
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS VERSUS MIDDLEWARE
•Interceptadores
•Processo de sistema distribuído baseado em objetos
•É oferecido ao objeto A uma interface local que é exatamente a
mesma oferecida pelo objeto B. A simplesmente chama o método
disponível na interface.
•A chamada por A é transformada em uma invocação a objeto
genérico, possibilitada por meio de uma interface geral de
invocação de objeto oferecida pelo middleware na máquina em
que A reside.
•Por fim, a invocação a objeto genérico é transformada em uma
mensagem que é enviada por meio de uma interface de rede de
nível de transporte como oferecida pelo sistema operacional local
A
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS VERSUS MIDDLEWARE
•Interceptadores
•Interceptador de
nível de requisição
•Interceptador de
nível de mensagem
SISTEMAS DISTRIBUÍDOS - Arquiteturas
ARQUITETURAS VERSUS MIDDLEWARE
SOFTWARE ADAPTATIVO
Separação de interesses
confiabilidade; desempenho,segurança
Programação orientada a aspectos
Reflexão computacional
inspecionar a si mesmo e adaptar comportamento
gerenciar a complexidade de sistemas distribuídos em
grande escala
Projeto baseado em componente
Adaptação por composição
SISTEMAS DISTRIBUÍDOS - Arquiteturas
AUTOGERENCIAMENTO SISTEMAS DISTRIBUÍDOS
Arquitetura de software preparada para adaptação
Monitoração e ajustes
Decidir onde deve ser executados os processos de
manipulação de adaptação
Sistemas de computação autonômica
Sistema auto – autogerenciador, auto-reparador, auto-
configurador, auto-otimizador
SISTEMAS DISTRIBUÍDOS - Arquiteturas
MODELO DE REALIMENTAÇÃO DE CONTROLE
SISTEMAS DISTRIBUÍDOS - Arquiteturas
MONITORAÇÃO DE SISTEMAS COM ASTROLABE
SISTEMAS DISTRIBUÍDOS - Arquiteturas
GERENCIAMENTO AUTOMÁTICO DE CONSERTO DE
COMPONENTE JADE
SISTEMAS DISTRIBUÍDOS - Arquiteturas

Mais conteúdo relacionado

Mais procurados

Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
robsons75
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de Projeto
Adriano Teixeira de Souza
 
Aula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de ComputadoresAula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de Computadores
Dalton Martins
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Dalton Martins
 
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de ComputadoresAula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Dalton Martins
 
Apostila projetode redes
Apostila projetode redesApostila projetode redes
Apostila projetode redes
redesinforma
 
Conecçao de rede
Conecçao de redeConecçao de rede
Conecçao de rede
Jojo Cruz
 

Mais procurados (20)

Sistemas Distribuídos - Aula 02
Sistemas Distribuídos - Aula 02Sistemas Distribuídos - Aula 02
Sistemas Distribuídos - Aula 02
 
Sistemas Distribuídos - Modelos Arquitetônicos
Sistemas Distribuídos - Modelos ArquitetônicosSistemas Distribuídos - Modelos Arquitetônicos
Sistemas Distribuídos - Modelos Arquitetônicos
 
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídosAula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de Projeto
 
Tutorial completo como montar uma rede de computadores
Tutorial completo como montar uma rede de computadoresTutorial completo como montar uma rede de computadores
Tutorial completo como montar uma rede de computadores
 
Aula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de ComputadoresAula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de Computadores
 
Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - Conceito
 
ACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidosACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidos
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
 
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de ComputadoresAula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
 
Apostila projetode redes
Apostila projetode redesApostila projetode redes
Apostila projetode redes
 
Conecçao de rede
Conecçao de redeConecçao de rede
Conecçao de rede
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
Apostila Digital
Apostila DigitalApostila Digital
Apostila Digital
 
Introdução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosIntrodução aos Sistemas Distribuídos
Introdução aos Sistemas Distribuídos
 
Projeto de Rede Local (LAN)
Projeto de Rede Local (LAN)Projeto de Rede Local (LAN)
Projeto de Rede Local (LAN)
 
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosAula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
 

Semelhante a Sistemas Distribuídos - Aula 2

Diagrama de implantação
Diagrama de implantaçãoDiagrama de implantação
Diagrama de implantação
elliando dias
 
diagrama de componentes
diagrama de componentesdiagrama de componentes
diagrama de componentes
elliando dias
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
elliando dias
 
Projetode redes
Projetode redesProjetode redes
Projetode redes
wab030
 
Gerência de Redes - 10.TMN e GIRS
Gerência de Redes - 10.TMN e GIRSGerência de Redes - 10.TMN e GIRS
Gerência de Redes - 10.TMN e GIRS
Mauro Tapajós
 
Gerenciamento-redes
Gerenciamento-redesGerenciamento-redes
Gerenciamento-redes
jasonbastos
 

Semelhante a Sistemas Distribuídos - Aula 2 (20)

Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
 
Diagrama de implantação
Diagrama de implantaçãoDiagrama de implantação
Diagrama de implantação
 
diagrama de componentes
diagrama de componentesdiagrama de componentes
diagrama de componentes
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
Apostila sql
Apostila sqlApostila sql
Apostila sql
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de Redes
 
Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 02Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 02
 
Projetode redes
Projetode redesProjetode redes
Projetode redes
 
Gerência de Redes - 10.TMN e GIRS
Gerência de Redes - 10.TMN e GIRSGerência de Redes - 10.TMN e GIRS
Gerência de Redes - 10.TMN e GIRS
 
02 sd - arquiteturas
02   sd - arquiteturas02   sd - arquiteturas
02 sd - arquiteturas
 
Arquitetura e Integração de sistemas
Arquitetura e Integração de sistemasArquitetura e Integração de sistemas
Arquitetura e Integração de sistemas
 
Arquitetura, uma questão de "estilo"?
Arquitetura, uma questão de "estilo"?Arquitetura, uma questão de "estilo"?
Arquitetura, uma questão de "estilo"?
 
Virtualização
VirtualizaçãoVirtualização
Virtualização
 
Em Direção às Redes Programáveis na Internet do Futuro
Em Direção às Redes Programáveis na Internet do FuturoEm Direção às Redes Programáveis na Internet do Futuro
Em Direção às Redes Programáveis na Internet do Futuro
 
Saidas Profissionais Coi2
Saidas Profissionais Coi2Saidas Profissionais Coi2
Saidas Profissionais Coi2
 
Sistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo realSistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo real
 
Gerenciamento-redes
Gerenciamento-redesGerenciamento-redes
Gerenciamento-redes
 
TCC Marcelo Siqueira
TCC Marcelo SiqueiraTCC Marcelo Siqueira
TCC Marcelo Siqueira
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
 

Último

Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
TailsonSantos1
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
AntonioVieira539017
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
tatianehilda
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
TailsonSantos1
 
Aula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxAula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptx
andrenespoli3
 

Último (20)

Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 
Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptx
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
Camadas da terra -Litosfera conteúdo 6º ano
Camadas da terra -Litosfera  conteúdo 6º anoCamadas da terra -Litosfera  conteúdo 6º ano
Camadas da terra -Litosfera conteúdo 6º ano
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
Aula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptxAula 03 - Filogenia14+4134684516498481.pptx
Aula 03 - Filogenia14+4134684516498481.pptx
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 

Sistemas Distribuídos - Aula 2

  • 1. ARQUITETURA DE SOFTWARE •Definição (vários componentes, sua organização e como interagem) •Importante (separar aplicações das camadas subjascentes provendo uma camada de middleware) •Tornar o middleware adaptativo) •Adaptabilidade (monitorar seu próprio comportamento e tomar decisões) – sistemas autonômicos SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 2. ESTILOS ARQUITETÔNICOS •Formado em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre componentes e, por fim, da maneira como esses elementos são configurados em conjunto para formar um sistema. •Componente – é uma unidade modular com interfaces requeridas e fornecidas bem definidas que é substituível dentro de seu ambiente. •Conector - em geral descrito como um mecanismo da comunicação ou da cooperação entre componentes SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 3. ESTILOS ARQUITETÔNICOS Arquitetura em camadas •Componentes organizados em camadas, onde componentes da camada Li pode chamar métodos da camada Li-1, mas não o contrário; Arquiteturas baseadas em objetos •Objetos correspondem às definições de componentes, que são conectados por meio de chamadas de procedimento remotas; SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 4. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS - Arquiteturas ESTILOS ARQUITETÔNICOS (A) EM CAMADAS E (B) BASEADO EM OBJETOS
  • 5. ESTILOS ARQUITETÔNICOS Arquiteturas centradas em dados •Processos se comunicam por meio de repositório comum (passivo ou ativo); Arquiteturas baseadas em eventos •Processos se comunicam por meio de propagação de eventos que podem transportar dados; •Sistemas Publicar/Subscrever; •São referencialmente desacoplados. •Espaços compartilhados de dados, com arquiteturas baseadas em eventos juntamente com centradas em dados. SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 6. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS - Arquiteturas ESTILOS ARQUITETÔNICOS (A) BASEADOS EM EVENTOS E (B) CENTRADAS EM DADOS
  • 7. ARQUITETURAS CENTRALIZADAS Cliente-servidor básico •Servidor •Cliente •Comportamento de requisição resposta Protocolos •Simples sem conexão (UDP) para redes locais •Problemas de garantia e Idempontência •Protocolo confiável orientado a conexão SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 8. Arquiteturas Centralizadas • Modelo Cliente-Servidor • Problemas: Orientado ou não-orientado a conexão (TCP ou UDP)? ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS CENTRALIZADAS
  • 9. ARQUITETURAS CENTRALIZADAS Cliente-servidor básico •Camadas de Aplicação •Divididas em 3 níveis: •Nível de interface de usuário •Contém tudo o que é necessário para fazer interface com o usuário •Nível de processamento •Contém as aplicações •Nível de dados •Gerencia os dados propriamente ditos SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 10. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS CENTRALIZADAS ORGANIZAÇÃO EM 3 CAMADAS DE APLICAÇÃO UMA MECANISMO DE BUSCA DA INTERNET
  • 11. ARQUITETURAS CENTRALIZADAS Distribuição Física Arquitetura de duas divisões (físicas) é distribuída da seguinte forma: 1. Uma máquina cliente que contém apenas os programas que implementam o nível (ou parte do nível) de interface de usuário 2. Uma máquina do servidor que contém todo o resto, ou seja, os níveis de processamento e de dados. SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 12. •Alternativas de distribuição •Cliente Magro e Cliente Gordo SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS CENTRALIZADAS ARQUITETURAS MULTIDIVIDIDAS.
  • 13. ANDREW S. TANENBAUM MAARTEN VAN STEEN •Arquitetura de três divisões (físicas) SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS CENTRALIZADAS ARQUITETURAS MULTIDIVIDIDAS.
  • 14. ARQUITETURAS CENTRALIZADAS Distribuição vertical •Componentes logicamente diferentes em máquinas diferentes; Fragmentação vertical (BD distribuído) SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 15. ARQUITETURAS DESCENTRALIZADAS Distribuição horizontal •Um cliente ou servidor pode ser subdividido em partes logicamente equivalentes, mas cada parte está operando em sua própria porção do conjunto de dados, equilibrando a carga. •Ex.: Peer to Peer (servidor e cliente ao mesmo tempo, também chamada “servente”) SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 16. ARQUITETURAS DESCENTRALIZADAS Distribuição horizontal •Rede de Sobreposição (uma rede na qual os nós são formados pelos processos e os enlances representam os canais de comunicação possível) •Estrutura •Não Estruturadas SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 17. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Estruturado Tabela Hash Distribuída – SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 18. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Estruturado Sistema Chord Gerenciamento de associação de grupo SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 19. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Estruturado Sistema Chord Gerenciamento de associação de grupo Ao entrar no sistema, o nó recebe um identificador aleatório id. • Pesquisa em id retorna o endereço de rede succ(id). • Novo no contata succ(id) e seu predecessor e se insere no anel. • Na partida, o no envia os dados para o succ(id). Sair – nó informa sua saída ao predecesso e sucessor e transfere seus itens de dados para succ(id) SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 20. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Estruturado Rede de Conteúdo endereçável (Content Addressable Network) Roteamento baseando em posicionamento SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 21. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Não Estruturado Algoritmos aleatório para construir rede de sobreposição. Rede de sobreposição parecida com um gráfico aleatório Visão Parcial Thread Ativo (se comunica com outro nó e seleciona esse nó de acordo com sua visão parcial corrente) Thread Passivo (nó passivo também formará sua visão parcial) Grau interno de um nó (conjunto de nós cujo a suas visões parciais se refere a P) Evitar gargalo de nós ou nó comum SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 22. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Não Estruturado Gerenciamento de Topologia de redes de sobreposição Abordagem em duas camadas SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 23. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Não Estruturado Gerenciamento de Topologia de redes de sobreposição Função de ordenação (simples – distância crescente de um nó) Topologia Toro -> tempo X camada não etruturada Proximidade semântica Redes Semânticas de sobreposição SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 24. ARQUITETURAS DESCENTRALIZADAS Peer-to-peer Não Estruturado Superpares Crescimento da rede Nó que mantém índice Relação cliente superpar fixa SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 25. ANDREW S. TANENBAUM MAARTEN VAN STEEN •Sistemas de servidor de borda (Internet) •Sistemas colaborativos (Torrent) SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS HÍBRIDAS
  • 26. •Rede Colaborativa de distribuição de conteúdo Globule •Colaboram com réplicas de páginas •Componentes do servidor: •Um componente que pode redirecionar requisições de clientes a outros servidores •Um componente para analisar padrões de acesso. •Um componente para gerenciar as replicações de páginas web •Servidor de origem SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS HÍBRIDAS
  • 27. SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS HÍBRIDAS BitTorrent Peer-to-peer de transferência de arquivo(download) Reciprocidade (ajudar outras com download). arquivos .torrent, contém as informações necessárias para transferir um ou mais arquivos específicos Rastreador – servidor que está mantendo uma contabilidade precisa de nós ativos que tem o arquivo requisitado O gargalo dos servidores são os rastreadores Redução de taxa para quem não colabora
  • 28. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS HÍBRIDAS FUNCIONAMENTO DO BITTORRENT
  • 29. SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS HÍBRIDAS FUNCIONAMENTO DO BITTORRENT
  • 30. •Onde o Middleware se encaixa? •Entre aplicações e plataformas distribuídas, com finalidade de proporcionar um grau de transparência à distribuição de dados, processamento e controle. •Middlewares normalmente seguem estilos arquitetônicos específicos: •CORBA (baseado em objetos); •Tibico (baseado em eventos) SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS VERSUS MIDDLEWARE
  • 31. •Simplifica os projetos de aplicação •Não é 100% adaptável aos requisitos da aplicação •Seria necessário configurar, adaptar e personalizar •Introdução de Políticas e Mecanismo •Mecanismo modificando o comportamento SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS VERSUS MIDDLEWARE
  • 32. •Interceptadores •Processo de sistema distribuído baseado em objetos •É oferecido ao objeto A uma interface local que é exatamente a mesma oferecida pelo objeto B. A simplesmente chama o método disponível na interface. •A chamada por A é transformada em uma invocação a objeto genérico, possibilitada por meio de uma interface geral de invocação de objeto oferecida pelo middleware na máquina em que A reside. •Por fim, a invocação a objeto genérico é transformada em uma mensagem que é enviada por meio de uma interface de rede de nível de transporte como oferecida pelo sistema operacional local A SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS VERSUS MIDDLEWARE
  • 33. •Interceptadores •Interceptador de nível de requisição •Interceptador de nível de mensagem SISTEMAS DISTRIBUÍDOS - Arquiteturas ARQUITETURAS VERSUS MIDDLEWARE
  • 34. SOFTWARE ADAPTATIVO Separação de interesses confiabilidade; desempenho,segurança Programação orientada a aspectos Reflexão computacional inspecionar a si mesmo e adaptar comportamento gerenciar a complexidade de sistemas distribuídos em grande escala Projeto baseado em componente Adaptação por composição SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 35. AUTOGERENCIAMENTO SISTEMAS DISTRIBUÍDOS Arquitetura de software preparada para adaptação Monitoração e ajustes Decidir onde deve ser executados os processos de manipulação de adaptação Sistemas de computação autonômica Sistema auto – autogerenciador, auto-reparador, auto- configurador, auto-otimizador SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 36. MODELO DE REALIMENTAÇÃO DE CONTROLE SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 37. MONITORAÇÃO DE SISTEMAS COM ASTROLABE SISTEMAS DISTRIBUÍDOS - Arquiteturas
  • 38. GERENCIAMENTO AUTOMÁTICO DE CONSERTO DE COMPONENTE JADE SISTEMAS DISTRIBUÍDOS - Arquiteturas