SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
SISTEMAS DISTRIBUÍDOS
Prof. Edison Santos
 Aluno Especial em Mestrado UFBA
e UNEB
 Especialista em Estratégias de
Arquitetura de Software
 Bacharel em Sistemas de
Informação
 Experiências Educacionais
 Professor EAD IFBA Profuncionario
 Instrutor de AVA Moodle
 Educador de Informática Básico com
Ênfase inclusão Social;
 Experiências Profissional
 Desenvolvedor Pleno Capgemini
 Analista de Sistemas - Qualitech
 Desenvolvedor Web – Grupo Santa
Helena
 Desenvolver Web – UFBA
• Avanços dos sistemas de computação em 1945 (Era Moderna dos
Computadores)
• computadores grandes
• De alto custo
• Independentes
• Meados de 80
• Máquinas de 8 bits, 16, 32 e 64 bits
• CPU com capacidade de mainframe
SISTEMAS DISTRIBUÍDOS
Introdução a Sistemas Distribuídos
• Últimos 50 anos
• Redução de preços
• Aumento da capacidade de processamento
• Redes Locais (LAN Local-Area Networks)
• Redes de Longas Distâncias (WANs Wide-Area Networks)
SISTEMAS DISTRIBUÍDOS
Introdução a Sistemas Distribuídos
• “Um sistema distribuído é um conjunto de computadores
independentes que se apresenta a seus usuários como um sistema
único e coerente” (Tanenbaum, 1995)
• “Definimos um sistema distribuído como sendo aquele no qual os
componentes de hardware ou de software, localizados em
computadores interligados em rede, se comunicam e coordenam suas
ações apenas enviando mensagens entre si” (Couloris, 2005)
• “Você sabe que tem um quando a falha de um computador do qual
nunca ouviu falar impede que você faça qualquer trabalho”. (Leslie
Lamport)
SISTEMAS DISTRIBUÍDOS
Definições
SISTEMAS DISTRIBUÍDOS
Definições
• Alguns Aspectos
• Componentes (computadores)
autônomos
• Visão de unicidade para o usuário
(programa ou humano) Transparência
• Componentes interconectados
(arquiteturas/middleware)
• Computadores e Redes Heterogêneos
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
Abstrações disponibilizadas pelo Middleware.
• Comunicação
• Segurança
• Persistência
• Controle de
• Transações
• Etc.
Retirado de: Tanenbaum, A. Sistemas Distribuídos.
SISTEMAS DISTRIBUÍDOS
Abstrações do Middleware *
SISTEMAS DISTRIBUÍDOS
Definições
• Alguns Aspectos
• Comunicação autônoma e Inexistência de Relógio Global (troca de mensagens)
• Falhas Independentes
• Concorrência/Compartilhamento de recurso
SISTEMAS DISTRIBUÍDOS
Exemplos de Sistemas Distribuídos
• A Internet
• Conjunto de redes de computadores
interligados
• Mecanismos de comunicação da Internet
(protocolos) *
• Serviços disponibilizados: www, email,
transferência de arquivos, multimídias
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Exemplos de Sistemas Distribuídos
• A Intranet
• Várias redes LAN e/ou LANs
interconectadas por backbone
• Conexão de Internet por roteador
• Firewall
• Necessidades: serviços de arquivos,
segurança, avaliar custos de instalação
de software
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Exemplos de Sistemas Distribuídos
• Computação Ubíqua/Pervasiva
• Pequenos equipamentos computacionais
(notebooks, Smartphones, câmeras
digitais, dispositivos incorporados a
eletrodomésticos e outros)
• Miniaturização de dispositivos
• Interligação de redes sem fio
• Sistemas distribuídos
• Computação móvel/nômade
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
• Acesso a recursos
• Transparência
• Abertura
• Escalabilidade
SISTEMAS DISTRIBUÍDOS
Metas dos Sistemas Distribuídos
• “Acesso a recursos remotos e seu compartilhamento de
maneira controlada e eficiente”.
• Exemplo Groupware (software de edição colaborativa,
teleconferência e etc.)
• Quanto maior conectividade maior deve ser segurança
• Criptografia
• Rastreamento de comunicações (Perfil de usuário)
• Comunicação indesejada (Spam)
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Acesso a recurso
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Transparência da distribuição
• “... ocultar completamente dos usuários todos os aspectos
da distribuição não é uma boa ideia.”
• Exemplos
• Fuso horário
• Limites de capacidade física
• Transparência versus desempenho – Requisições sem sucesso
liberar controle ao usuário
• Replicação (requer tempo de atualização)
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Transparência da distribuição
• “Um sistema distribuído aberto é um sistema que oferece
serviços de acordo com as regras padronizadas que
descrevem a sintaxe e a semântica desses serviços”.
• Interface Definition Language - IDL
• Interoperabilidade (Componentes coexistindo com confiança
mútua)
• Portabilidade.
• Extensível (Estrutura de Componentes com fácil adição, troca
e remoção dos mesmo)
• Política e Mecanismos
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Abertura
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Problemas de Escalabilidade
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Problemas de Escalabilidade
• Tamanho
• Internet DNS
• Geográfica
• Longas distâncias
• Localização de um serviço
• Administrativa
• Políticas organizacionais
• Colaboração Humana
• Ocultar a latência de Comunicação
• Usar por exemplo comunicação assíncrona
• Ex: AJAX em Serviços Web.
• Reduz tráfego
• Não bloqueia a aplicação
• Ex: Distribuir processamento (Cliente vs. Servidor)
• Javascript lado cliente para Validação
• Não usar applet síncrono para entrada de dados
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Técnicas para Alcançar Escalabilidade
• Distribuição
• Partes maiores em partes menores e espalhá-la através do
sistema (Serviço de nomeação DNS – diferentes
computadores assumes responsabilidade)
• Replicação
• Cache de páginas em browser
• Possíveis problemas de consistências dos dados
SISTEMAS DISTRIBUÍDOS
Metas de um Sistema Distribuído
Técnicas para Alcançar Escalabilidade
• Premissas falsas adotadas ao desenvolver uma
aplicação distribuída pela primeira vez
1. A rede é confiável
2. A rede é segura
3. A rede é homogênea
4. A topologia não muda
5. A latência é zero
6. A largura da banda é infinita
7. O custo de transporte é zero
8. Há apenas um administrador
SISTEMAS DISTRIBUÍDOS
Principais ciladas
• Sistemas de Computação distribuída
• Sistemas de Informação distribuída
• Sistemas distribuídos pervasivos
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
Sistemas de Computação Distribuída – Cluster
Homogêneo
Nó Mestre
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
Sistemas de Computação Distribuída – Grade (grid)
Heterogeneidade
Organização Virtual
(login da organização)
Acesso de recursos
Servidores de computação
Armazenamento
Banco de dados
Arquitetura em Camadas
Conectividade (protocolos de comunicação)
Recursos (controle de acesso de recursos)
Coletiva (descoberta de recursos, alocação e escalonamento de tarefas, replicação de dados)
Aplicação (aplicações dentro da organização virtual)
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
Sistemas de Informação Distribuídos
Integração de sistemas de informação
Problemas de interoperabilidade
Empacota várias requisições de programas clientes em uma
transação distribuída.
Simples servidores e programas remotos (clientes)
RPCs (Procedimentos remotos)
EAI (Enterprise Application Integration)
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
Sistemas de Informação Distribuídos
Processamento Transacional
ACID
Atômica (acontece completamente ou não
acontece)
Consistente (toda transação retorna o
ambiente a um estado consistente)
Isoladas (uma transação em processo não
impacta em outra)
Duráveis (uma ver realizada não é modificada)
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
Sistemas de Informação Distribuídos
Transações Aninhadas
Monitor de Transação
Chamada de Procedimento Remoto
(RPC – Remote Procedure Calls)
Chamada de Método Remoto
(RMI – Remote Method Invocations)
X
Middleware Orientado a Mensagem
(MOM – Message-oriented Middleware)
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
• Sistemas decorrentes do uso de computação móvel e embutida,
nas quais o comportamento esperado é a instabilidade;
• Pequeno tamanho
• Alimentados por bateria;
• Comunicação sem fio;
• Não possui controle administrativo humano, podendo:
1. Adotar mudanças contextuais
2. Incentivar composição ad hoc
3. Reconhecer compartilhamento como padrão
SISTEMAS DISTRIBUÍDOS
Tipos de Sistemas Distribuídos
Sistemas Distribuídos Pervasivos
SISTEMAS DISTRIBUÍDOS
Sistemas Pervasivos - Exemplos
Sistemas Domésticos
• Universal Plug and Play (UPnP)
• Espaço Pessoal
• Recomendadores (verificação interesses relevantes)
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Sistemas Pervasivos - Exemplos
Sistemas para tratamento de Saúde
ANDREW S. TANENBAUM
MAARTEN VAN STEEN
SISTEMAS DISTRIBUÍDOS
Sistemas Pervasivos - Exemplos
Redes de sensores sem fio
• Tanenbaum; Steen. Sistemas Distribuídos: Principios e Paradigmas, 2ed.
Pearson. 2007 (cap 1).
• Tanenbaum, Andrew s. Sistemas Operativos Distribuidos. 1ed, Prentice Hall,
New Jersey, 2001 (cap 1).
• Couloris, George; Dollimore, Jean; Kindberg, Tim. Sistemas Distribuídos:
Conceitos e Projeto, 4ºed. Translate Bookman 2007 (cap 1).
Referências Bibliográficas

Mais conteúdo relacionado

Semelhante a Sistemas Distribuídos - Aula 1

Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
DuFelix02
 
Situação da migração para PostgreSQL
Situação da migração para PostgreSQLSituação da migração para PostgreSQL
Situação da migração para PostgreSQL
Leonardo Cezar
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
robsons75
 
Tecnologia da informacao
Tecnologia da informacaoTecnologia da informacao
Tecnologia da informacao
Luiz
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e Paralela
Adriano Teixeira de Souza
 

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

Aula 2 introdução a sistemas distribuídos
Aula 2   introdução a sistemas distribuídosAula 2   introdução a sistemas distribuídos
Aula 2 introdução a sistemas distribuídos
 
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
 
Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para Web
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Php Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsPhp Conf08 Enterprise Patterns
Php Conf08 Enterprise Patterns
 
SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas Distribuidos
 
Situação da migração para PostgreSQL
Situação da migração para PostgreSQLSituação da migração para PostgreSQL
Situação da migração para PostgreSQL
 
ACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidosACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidos
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
IFPA - Sistemas Distribuídos - Aula 01.pptx
IFPA - Sistemas Distribuídos - Aula 01.pptxIFPA - Sistemas Distribuídos - Aula 01.pptx
IFPA - Sistemas Distribuídos - Aula 01.pptx
 
Devops: Gestão e publicação de Dados no SQL Server
Devops: Gestão e publicação de Dados no SQL ServerDevops: Gestão e publicação de Dados no SQL Server
Devops: Gestão e publicação de Dados no SQL Server
 
Programação de Sistemas Distribuídos - Aula 03
Programação de Sistemas Distribuídos - Aula 03Programação de Sistemas Distribuídos - Aula 03
Programação de Sistemas Distribuídos - Aula 03
 
Tecnologia da informacao
Tecnologia da informacaoTecnologia da informacao
Tecnologia da informacao
 
02 sd - arquiteturas
02   sd - arquiteturas02   sd - arquiteturas
02 sd - arquiteturas
 
Introdução à sistemas distribuídos
Introdução à sistemas distribuídosIntrodução à sistemas distribuídos
Introdução à sistemas distribuídos
 
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
 
Big data e mineração de dados
Big data e mineração de dadosBig data e mineração de dados
Big data e mineração de dados
 
SD_Aula_02_Introdução ao SD.pdf
SD_Aula_02_Introdução ao SD.pdfSD_Aula_02_Introdução ao SD.pdf
SD_Aula_02_Introdução ao SD.pdf
 
Servidores de Aplicações
Servidores de AplicaçõesServidores de Aplicações
Servidores de Aplicações
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e Paralela
 

Último

O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
azulassessoria9
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
sh5kpmr7w7
 
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
 

Último (20)

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
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
Renascimento Cultural na Idade Moderna PDF
Renascimento Cultural na Idade Moderna PDFRenascimento Cultural na Idade Moderna PDF
Renascimento Cultural na Idade Moderna PDF
 
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
 
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
 
3 2 - termos-integrantes-da-oracao-.pptx
3 2 - termos-integrantes-da-oracao-.pptx3 2 - termos-integrantes-da-oracao-.pptx
3 2 - termos-integrantes-da-oracao-.pptx
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
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
 
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptxPlano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .ppt
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 

Sistemas Distribuídos - Aula 1

  • 1. SISTEMAS DISTRIBUÍDOS Prof. Edison Santos  Aluno Especial em Mestrado UFBA e UNEB  Especialista em Estratégias de Arquitetura de Software  Bacharel em Sistemas de Informação  Experiências Educacionais  Professor EAD IFBA Profuncionario  Instrutor de AVA Moodle  Educador de Informática Básico com Ênfase inclusão Social;  Experiências Profissional  Desenvolvedor Pleno Capgemini  Analista de Sistemas - Qualitech  Desenvolvedor Web – Grupo Santa Helena  Desenvolver Web – UFBA
  • 2. • Avanços dos sistemas de computação em 1945 (Era Moderna dos Computadores) • computadores grandes • De alto custo • Independentes • Meados de 80 • Máquinas de 8 bits, 16, 32 e 64 bits • CPU com capacidade de mainframe SISTEMAS DISTRIBUÍDOS Introdução a Sistemas Distribuídos
  • 3. • Últimos 50 anos • Redução de preços • Aumento da capacidade de processamento • Redes Locais (LAN Local-Area Networks) • Redes de Longas Distâncias (WANs Wide-Area Networks) SISTEMAS DISTRIBUÍDOS Introdução a Sistemas Distribuídos
  • 4. • “Um sistema distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único e coerente” (Tanenbaum, 1995) • “Definimos um sistema distribuído como sendo aquele no qual os componentes de hardware ou de software, localizados em computadores interligados em rede, se comunicam e coordenam suas ações apenas enviando mensagens entre si” (Couloris, 2005) • “Você sabe que tem um quando a falha de um computador do qual nunca ouviu falar impede que você faça qualquer trabalho”. (Leslie Lamport) SISTEMAS DISTRIBUÍDOS Definições
  • 5. SISTEMAS DISTRIBUÍDOS Definições • Alguns Aspectos • Componentes (computadores) autônomos • Visão de unicidade para o usuário (programa ou humano) Transparência • Componentes interconectados (arquiteturas/middleware) • Computadores e Redes Heterogêneos ANDREW S. TANENBAUM MAARTEN VAN STEEN
  • 6. Abstrações disponibilizadas pelo Middleware. • Comunicação • Segurança • Persistência • Controle de • Transações • Etc. Retirado de: Tanenbaum, A. Sistemas Distribuídos. SISTEMAS DISTRIBUÍDOS Abstrações do Middleware *
  • 7. SISTEMAS DISTRIBUÍDOS Definições • Alguns Aspectos • Comunicação autônoma e Inexistência de Relógio Global (troca de mensagens) • Falhas Independentes • Concorrência/Compartilhamento de recurso
  • 8. SISTEMAS DISTRIBUÍDOS Exemplos de Sistemas Distribuídos • A Internet • Conjunto de redes de computadores interligados • Mecanismos de comunicação da Internet (protocolos) * • Serviços disponibilizados: www, email, transferência de arquivos, multimídias ANDREW S. TANENBAUM MAARTEN VAN STEEN
  • 9. SISTEMAS DISTRIBUÍDOS Exemplos de Sistemas Distribuídos • A Intranet • Várias redes LAN e/ou LANs interconectadas por backbone • Conexão de Internet por roteador • Firewall • Necessidades: serviços de arquivos, segurança, avaliar custos de instalação de software ANDREW S. TANENBAUM MAARTEN VAN STEEN
  • 10. SISTEMAS DISTRIBUÍDOS Exemplos de Sistemas Distribuídos • Computação Ubíqua/Pervasiva • Pequenos equipamentos computacionais (notebooks, Smartphones, câmeras digitais, dispositivos incorporados a eletrodomésticos e outros) • Miniaturização de dispositivos • Interligação de redes sem fio • Sistemas distribuídos • Computação móvel/nômade ANDREW S. TANENBAUM MAARTEN VAN STEEN
  • 11. • Acesso a recursos • Transparência • Abertura • Escalabilidade SISTEMAS DISTRIBUÍDOS Metas dos Sistemas Distribuídos
  • 12. • “Acesso a recursos remotos e seu compartilhamento de maneira controlada e eficiente”. • Exemplo Groupware (software de edição colaborativa, teleconferência e etc.) • Quanto maior conectividade maior deve ser segurança • Criptografia • Rastreamento de comunicações (Perfil de usuário) • Comunicação indesejada (Spam) SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Acesso a recurso
  • 13. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Transparência da distribuição
  • 14. • “... ocultar completamente dos usuários todos os aspectos da distribuição não é uma boa ideia.” • Exemplos • Fuso horário • Limites de capacidade física • Transparência versus desempenho – Requisições sem sucesso liberar controle ao usuário • Replicação (requer tempo de atualização) SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Transparência da distribuição
  • 15. • “Um sistema distribuído aberto é um sistema que oferece serviços de acordo com as regras padronizadas que descrevem a sintaxe e a semântica desses serviços”. • Interface Definition Language - IDL • Interoperabilidade (Componentes coexistindo com confiança mútua) • Portabilidade. • Extensível (Estrutura de Componentes com fácil adição, troca e remoção dos mesmo) • Política e Mecanismos SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Abertura
  • 16. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Problemas de Escalabilidade
  • 17. SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Problemas de Escalabilidade • Tamanho • Internet DNS • Geográfica • Longas distâncias • Localização de um serviço • Administrativa • Políticas organizacionais • Colaboração Humana
  • 18. • Ocultar a latência de Comunicação • Usar por exemplo comunicação assíncrona • Ex: AJAX em Serviços Web. • Reduz tráfego • Não bloqueia a aplicação • Ex: Distribuir processamento (Cliente vs. Servidor) • Javascript lado cliente para Validação • Não usar applet síncrono para entrada de dados SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Técnicas para Alcançar Escalabilidade
  • 19. • Distribuição • Partes maiores em partes menores e espalhá-la através do sistema (Serviço de nomeação DNS – diferentes computadores assumes responsabilidade) • Replicação • Cache de páginas em browser • Possíveis problemas de consistências dos dados SISTEMAS DISTRIBUÍDOS Metas de um Sistema Distribuído Técnicas para Alcançar Escalabilidade
  • 20. • Premissas falsas adotadas ao desenvolver uma aplicação distribuída pela primeira vez 1. A rede é confiável 2. A rede é segura 3. A rede é homogênea 4. A topologia não muda 5. A latência é zero 6. A largura da banda é infinita 7. O custo de transporte é zero 8. Há apenas um administrador SISTEMAS DISTRIBUÍDOS Principais ciladas
  • 21. • Sistemas de Computação distribuída • Sistemas de Informação distribuída • Sistemas distribuídos pervasivos SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos
  • 22. SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos Sistemas de Computação Distribuída – Cluster Homogêneo Nó Mestre ANDREW S. TANENBAUM MAARTEN VAN STEEN
  • 23. SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos Sistemas de Computação Distribuída – Grade (grid) Heterogeneidade Organização Virtual (login da organização) Acesso de recursos Servidores de computação Armazenamento Banco de dados Arquitetura em Camadas Conectividade (protocolos de comunicação) Recursos (controle de acesso de recursos) Coletiva (descoberta de recursos, alocação e escalonamento de tarefas, replicação de dados) Aplicação (aplicações dentro da organização virtual)
  • 24. SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos Sistemas de Informação Distribuídos Integração de sistemas de informação Problemas de interoperabilidade Empacota várias requisições de programas clientes em uma transação distribuída. Simples servidores e programas remotos (clientes) RPCs (Procedimentos remotos) EAI (Enterprise Application Integration)
  • 25. SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos Sistemas de Informação Distribuídos Processamento Transacional ACID Atômica (acontece completamente ou não acontece) Consistente (toda transação retorna o ambiente a um estado consistente) Isoladas (uma transação em processo não impacta em outra) Duráveis (uma ver realizada não é modificada)
  • 26. SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos Sistemas de Informação Distribuídos Transações Aninhadas Monitor de Transação Chamada de Procedimento Remoto (RPC – Remote Procedure Calls) Chamada de Método Remoto (RMI – Remote Method Invocations) X Middleware Orientado a Mensagem (MOM – Message-oriented Middleware) ANDREW S. TANENBAUM MAARTEN VAN STEEN
  • 27. • Sistemas decorrentes do uso de computação móvel e embutida, nas quais o comportamento esperado é a instabilidade; • Pequeno tamanho • Alimentados por bateria; • Comunicação sem fio; • Não possui controle administrativo humano, podendo: 1. Adotar mudanças contextuais 2. Incentivar composição ad hoc 3. Reconhecer compartilhamento como padrão SISTEMAS DISTRIBUÍDOS Tipos de Sistemas Distribuídos Sistemas Distribuídos Pervasivos
  • 28. SISTEMAS DISTRIBUÍDOS Sistemas Pervasivos - Exemplos Sistemas Domésticos • Universal Plug and Play (UPnP) • Espaço Pessoal • Recomendadores (verificação interesses relevantes)
  • 29. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS Sistemas Pervasivos - Exemplos Sistemas para tratamento de Saúde
  • 30. ANDREW S. TANENBAUM MAARTEN VAN STEEN SISTEMAS DISTRIBUÍDOS Sistemas Pervasivos - Exemplos Redes de sensores sem fio
  • 31. • Tanenbaum; Steen. Sistemas Distribuídos: Principios e Paradigmas, 2ed. Pearson. 2007 (cap 1). • Tanenbaum, Andrew s. Sistemas Operativos Distribuidos. 1ed, Prentice Hall, New Jersey, 2001 (cap 1). • Couloris, George; Dollimore, Jean; Kindberg, Tim. Sistemas Distribuídos: Conceitos e Projeto, 4ºed. Translate Bookman 2007 (cap 1). Referências Bibliográficas