Sistemas Distribuídos Silvia Cristina Sardela Bianchi.

Post on 17-Apr-2015

115 views 10 download

Transcript of Sistemas Distribuídos Silvia Cristina Sardela Bianchi.

Sistemas DistribuídosSistemas Distribuídos

Silvia Cristina Sardela Bianchi

AgendaAgenda

• Definição de sistemas distribuídos

• Características dos sistemas distribuídos

• Tipos de sistemas distribuídos

• Sistemas de computação distribuídos

• Sistemas de informação distribuídos

• Sistemas distribuídos pervasivos2

Definição de Sistemas DistribuídosDefinição de Sistemas Distribuídos• Um sistema distribuído é uma coleção de

computadores autônomos conectados por uma

rede e equipados com um sistema de software

distribuído (Colouris).

• Um sistema distribuído é uma coleção de

computadores independentes que apresenta a

seus usuários como um sistema único e coerente

(Tanenbaum). 3

Definição de Sistemas DistribuídosDefinição de Sistemas Distribuídos

• “Você sabe que existe um sistema distribuído

quando a falha um computador que você nunca

ouviu falar impede que você faça qualquer

trabalho (Leslie Lamport).

4

Características Dos Sistemas Características Dos Sistemas DistribuídosDistribuídos

5

• Compartilhamento de recursosCompartilhamento de recursos:– Hardware, software e dados– de maneira controlada e eficiente

– ProblemaProblema: segurança

• ConcorrênciaConcorrência:– Atribuição de parcela de tempos para

diferentes processos– Acesso concorrente a recursos

compartilhados requer sincronização

Características Dos Sistemas Características Dos Sistemas DistribuídosDistribuídos

6

• HeterogeneidadeHeterogeneidade:

– Rede, hardware, S.O., linguagens de

programação, implementação de diferentes

desenvolvedores.

– Middleware: para suportar a heterogeneidade

e oferecer uma visão de um sistema único.

MiddlewareMiddleware

7

• InteroperabilidadeInteroperabilidade:

– Middleware é um software de conectividade

que consiste em um conjunto de serviços que

permite a interação, através da rede, de

múltiplos processos executando em uma ou

mais máquinas.

Vantagens do Vantagens do MiddlewareMiddleware • Redução da complexidade: o middleware provê

os serviços comuns de troca de mensagens entre os componentes do sistema.

• Transparência de localização.

• O cliente e o servidor não precisam se conhecer diretamente.

• Isola os componentes da aplicação de sua implementação que pode estar desenvolvida em outra linguagem e residente em outra plataforma.

Características Dos Sistemas Características Dos Sistemas DistribuídosDistribuídos

9

• AberturaAbertura:–Possuem interfaces bem definidas e totalmente disponíveis (públicas).

–IDL (Linguagem de definição de interface): nomes das funções, tipos de parâmetros, valores de retorno e possíveis execuções.

IDL: Linguagem de Definição de IDL: Linguagem de Definição de InterfaceInterface

• O cliente necessita saber:o quais são os serviços que estão disponíveis

no servidor.o como acioná-los.o quais os parâmetros devem ser passados.

• Portanto: o IDL é uma linguagem de definição e não de

programação.o IDL é utilizada para definir interfaces e não

para escrever algoritmos.

Exemplo da utilização da IDLExemplo da utilização da IDL

C C++ Java Delphi C Java

IDL IDL IDL IDL IDL IDL

CLIENTE SERVIDOR

MIDDLEWARE

Exemplo da utilização da IDL: WSDL Exemplo da utilização da IDL: WSDL ((Web SerivcesWeb Serivces))

http://www.w3.org/Consortium/Offices/Presentations/Overview/images/WSExample.png

Características Dos Sistemas Características Dos Sistemas DistribuídosDistribuídos

13

• TransparênciaTransparência:–Acesso: oculta diferenças na representação de dados e no modo de acesso a um recurso. –Localização: oculta o lugar em que um recurso está localizado.–Migração: oculta que um recurso pode ser movido para uma outra localização.–Relocação: oculta que um recurso pode ser movido para uma outra localização enquanto o uso.

Características Dos Sistemas Características Dos Sistemas DistribuídosDistribuídos

14

• TransparênciaTransparência:–Concorrência: oculta que um recurso pode ser compartilhado por diversos usuários concorrentes. –Replicação: oculta que um recurso é replicado.

–Falha: oculta a falha e a recuperação de um recurso.

Características Dos Sistemas Características Dos Sistemas DistribuídosDistribuídos

15

• ExtensibilidadeExtensibilidade:– Em caso de adição de software ou hardware,

não há degeneração.

• EscalabilidadeEscalabilidade:– Mudanças na escala do sistema

computacional não modificam o comportamento do sistema.

• Tolerância a falhasTolerância a falhas:– Alto grau de disponibilidade aos seus

usuários, mesmo na presença de falhas.– Redundância de hardware, recuperação de

software .

Tipos de sistemas distribuídosTipos de sistemas distribuídos

• Sistemas de computação distribuídos

• Sistemas de informação distribuídos

• Sistemas distribuídos pervasivos

16

Sistemas de Computação DistribuídosSistemas de Computação Distribuídos• Utilizado para tarefas de computação de alto

desempenho.

• Distribuir a carga de uma determinada aplicação em vários computadores melhores adaptados para executar esta tarefa.

• Exemplo: Cluster, Computação em Grade, Computação em Nuvem.

18

Vantagens da distribuição de Vantagens da distribuição de processamentoprocessamento

• Distribuir a carga de uma determinada aplicação em computadores melhores adaptados para executar esta tarefa.

• Utilizar recursos de hardware e software disponíveis em plataformas heterogêneas.

• Diminuição de custo: explorar os recursos computacionais existente.

Sistemas de Informação DistribuídosSistemas de Informação DistribuídosSistemas de processamento de transações

(Tanenbaum):Transação aninhada

subtransação

dois bancos de dados independentes

Banco de dados da companhia aérea

Banco de dados do hotel

subtransação

Sistemas de Informação DistribuídosSistemas de Informação DistribuídosSistemas de processamento de transações

(Tanenbaum):

22

Exemplo de soluções: TIBCO, Websphere, Weblogic, etc.

Sistemas de Informação DistribuídosSistemas de Informação DistribuídosIntegração de aplicações empresariais (Tanembaum):

Sistemas PervasivosSistemas Pervasivos• Instabilidade é o comportamento esperado destes

sistemas.

• Dispositivos de computação móveis e embutidos:o Pequenos,o Alimentação por bateria,o Mobilidade e conexão sem fio.

• Ausência de controle administrativo humano.: podem ser configurados pelos proprietários e precisam descobrir o ambiente automativamente.

• Dinamismo no ambiente.

• Pode não haver transparência na distribuição.

Sistemas PervasivosSistemas Pervasivos• Tipos de sistemas (Tanenbaum):

o Sistemas domésticos: integram TV, sistemas de áudio e vídeo, jogos, etc..

o Sistemas eletrônicos para tratamento de saúde:o Redes de sensores

25http://outsideinnovation.blogs.com/pseybold/2009/03/-sun-will-shine-in-blue-cloud.html