aula 1 sd

Post on 24-Dec-2015

9 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introdução a Sistemas Distríbuidos

TRANSCRIPT

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

• Últimos 50 anos

• Redução de preços

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 computadoresindependentes 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 oscomponentes de hardware ou de software, localizados emcomputadores interligados em rede, se comunicam e coordenam suasações apenas enviando mensagens entre si” (Couloris, 2005)

• “Você sabe que tem um quando a falha de um computador do qualnunca ouviu falar impede que você faça qualquer trabalho”. (LeslieLamport)

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 LANsinterconectadas 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ômadeANDREW 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 ofereceserviços de acordo com as regras padronizadas quedescrevem a sintaxe e a semântica desses serviços”.

• Interface Definition Language - IDL

• Interoperabilidade (Componentes coexistindo com confiançamútua)

• Portabilidade.

• Extensível (Estrutura de Componentes com fácil adição, trocae 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ídoTé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çãoProblemas 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

ACIDAtô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)

XMiddleware 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

top related