sistemas distribuídos silvia cristina sardela bianchi
TRANSCRIPT
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