sistemas distribuidos

28
SISTEMAS DISTRIBUÍDOS Princípios e paradigmas slide 1/14 Capítulo 1 - Introdução www.pearson.com.br Andrew S. Tanenbaum Maarten Van Steen Introdução 1 capítulo

Upload: felipe-osmar-de-aviz

Post on 18-Aug-2015

20 views

Category:

Documents


3 download

DESCRIPTION

Aula introdução de Sistemas Distribuidos em rede

TRANSCRIPT

SISTEMAS DISTRIBUDOSPrincpios e paradigmasslide1/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenIntroduo1captuloSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide2/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenO que um Sistema Distribudo? Um conjunto de computadores independentes que se apresenta a seus usurios como um sistema nico e coerente. (Ex. de SD: Internet, intranets, computao mvel e ubqua (ou pervasiva) Aquele no qual os componentes localizados em computadores interligados em rede se comunicam e coordenam suas aes apenas passando mensagens. (Coulouris)SISTEMAS DISTRIBUDOSPrincpios e paradigmasslide3/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenPrincipais caractersticas Diferenas entre os computadores e como eles se comunicam. ocultas ao usurio Usurios e aplicaes podem interagir com um sistema distribudo de maneira consistente e uniforme. independente de onde a interao ocorraSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide4/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenUso de middleware para sistemas heterogneosSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide5/14Captulo 1 - Introduowww.pearson.com.brMiddleware: Servios Tpicos Facilidades de comunicao Escondem o baixo nvel das primitivas de passagem de mensagens - Ex: RPC (chamada de procedimento remoto), RMI (Remote Method Invocation). Acesso transparente a dados: sistemas de arquivo distribudo e banco de dados distribudo.Nomeao Permite a consulta a entidades compartilhadas atravs de abstraes como pginas amarelasPersistnciaTransaes distribudasSegurana Em um middleware aberto, os protocolos utilizados em cada nvel devem ser os mesmos, assim como as interfaces disponibilizadas s aplicaes.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide6/14Captulo 1 - Introduowww.pearson.com.brMetas de um Sistema DistribudoAndrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide7/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenMetas de um Sistema DistribudoAcesso a recursos Objetivo Facilitar acesso e compartilhamento de recursos remotos de maneira controlada e eficiente(Ex. Web, Groupware) Necessrio aprimorar a segurana evitar acessos indevidos rastrear comunicaes criar perfis de usuriosSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide8/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenMetas de um Sistema DistribudoTransparncia da distribuioSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide9/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenMetas de um Sistema DistribudoTransparncia da distribuio Grau de transparncia Deve considerar: desempenho e facilidade de compreenso O usurio deve saber das limitaes do sistema decorrentes do mesmo ser distribudos? Tempo de acesso? Localizao de recursos?SISTEMAS DISTRIBUDOSPrincpios e paradigmasslide10/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenMetas de um Sistema DistribudoAberto Um sistema distribudo aberto oferece servios seguindo regras padronizadas de sintaxe e semntica Uso da IDL (linguagem de descrio de interface) Especificaes: completas e neutras Importantes para interoperabilidade e portabilidade O sistema distribudo deve ser extensvelSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide11/14Captulo 1 - Introduowww.pearson.com.brInteroperabilidade, Portabilidade e Extensibilidade Interoperabilidade caracteriza at que ponto duas implementaes de sistemas ou componentes de fornecedores diferentes devem coexistir e trabalhar em conjunto, especificados por um padro comum; Portabilidade caracteriza at que ponto umaaplicao desenvolvida para um sistema distribudo A pode ser executada, sem modificaes, em um sistema B; Extensibilidade define a capacidade de se adicionar novos componentes ou substituir componentes existentes sem afetar os que continuam no mesmo lugar.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide12/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenMetas de um Sistema DistribudoEscalabilidade Medida, no mnimo, quanto ao: tamanho termos geogrficos termos administrativos. Cada mtrica apresenta desafios a serem alcanadosSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide13/14Captulo 1 - Introduowww.pearson.com.brEscalabilidade com Relao ao Tamanho Se uma quantidade maior de usurios ou recursos devem ser considerados deve-se tomar cuidado com servios, dados e algoritmos centralizados:Andrew S. TanenbaumMaarten Van SteenConceito ExemploServiosCentralizados Um nico servidor para todos os usuriosDados centralizados Uma nica lista telefnica on-lineAlgoritmosCentralizadosFazer roteamento com base em informaes completasEles se tornam gargalos, pontos nicos de falhas e saturam a rede onde residem.SISTEMAS DISTRIBUDOSPrincpios e paradigmasslide14/14Captulo 1 - Introduowww.pearson.com.brAlgoritmos Distribudos Algoritmos distribudos possuem as seguintes diferenas com relao aos centralizados:1. Nenhum n possui informao completa do estado do sistema;2. Cada n toma decises baseado somente em informaes locais;3. A falha de um n no inviabiliza a execuo do algoritmo;4. No se pressupe a existncia de um relgio global.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide15/14Captulo 1 - Introduowww.pearson.com.brEscalabilidade Geogrfica Sistemas distribudos desenvolvidos para redes locais tipicamente utilizam comunicao sncrona, mas comunicao em WANs tipicamente trs ordens de magnitude mais lenta; Comunicao WAN no confivel e ocorre ponto-a-ponto enquanto em LANs confivel e baseada em broadcast. Isto facilita o desenvolvimento. Exemplo: servio de localizao.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide16/14Captulo 1 - Introduowww.pearson.com.brTcnicas de EscalabilidadeAndrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide17/14Captulo 1 - Introduowww.pearson.com.brEsconder a Latncia na Comunicao Construir a aplicao de forma a utilizarsomente comunicao assncrona; Em aplicaes batch e paralelas normalmente bem aceita mas o mesmo no ocorre em aplicaes interativas; Neste caso, uma soluo diminuir anecessidade de comunicao movendo parte da computao do servidor para o cliente.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide18/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenTcnicas de EscalabilidadeComunicao sncrona X assncronaSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide19/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenTcnicas de escalabilidade - distribuioSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide20/14Captulo 1 - Introduowww.pearson.com.brReplicao Aumenta a disponibilidade e ajuda a balancear a carga de trabalho entre componentes levando a um melhor desempenho; Caching uma forma especial de replicao na qual a deciso de trazer o objeto de seu cliente e no de seu proprietrio; Pode levar a problemas de consistncia.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide21/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenPrincipais ciladasPremissas falsas adotadas ao desenvolver uma aplicao distribuda pela primeira vez: A rede confivel A rede segura A rede homognea A topologia no muda A latncia zero A largura da banda infinita O custo de transporte zero H apenas um administrador (Peter Deutsch Sun Microsystems)SISTEMAS DISTRIBUDOSPrincpios e paradigmasslide22/14Captulo 1 - Introduowww.pearson.com.brTipos de Sistemas Distribudos Sistemas de Computao Distribudos Sistemas de Informao Distribudos Sistemas Distribudos PervasivosAndrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide23/14Captulo 1 - Introduowww.pearson.com.brSistemas de Computao Distribudos Muitos sistemas distribudos so utilizados para computao de alto desempenho: so divididos em computao em Cluster e computao em Grade. Computao em Cluster (Aglomerados): So essencialmente um grupo de sistemas conectados atravs de uma LAN; So homogneos: mesmo SO, hardware idntico ou muito similar; Possui um nico n de gerenciamento.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide24/14Captulo 1 - Introduowww.pearson.com.brComputao em grade Muitos ns de diversas origens: Heterogneos; Dispersos atravs de vrias organizaes; Podem compreender uma rede wide-rea; Organizaes virtuais.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide25/14Captulo 1 - Introduowww.pearson.com.brSistemas de Informao Distribudos Existe uma grande variedade de sistemas de informao que utilizam uma arquitetura distribuda; Parte dos sistemas distribudos em uso atualmente integram sistemas legados;Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide26/14Captulo 1 - Introduowww.pearson.com.brSistemas de Informao Distribudos Uma classe importante de sistemas de informao distribudos so os sistemas de processamento de transaes:1. Atomicidade: todas as operaes sero bem sucedidas ou falham;2. Consistncia: a transao no viola invariantes do sistema (exemplo: lei da conservao do dinheiro em transferncias no sistema bancrio);3. Isolamento: transaes concorrentes no interferem umas com as outras: o resultado final para cada uma delas se apresentar como se todas astransaes fossem executadas em sequncia em certa ordem;4. Durabilidade: uma vez confirmada a transao, as alteraes so permanentes.Andrew S. TanenbaumMaarten Van SteenSISTEMAS DISTRIBUDOSPrincpios e paradigmasslide27/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenSistemas de Informao Distribudos Empacota vrias requisies de programas clientesem uma transao distribuda. EAI (Enterprise Application Integration integrao de aplicaes empresariais) RPCs (Procedimentos remotos)SISTEMAS DISTRIBUDOSPrincpios e paradigmasslide28/14Captulo 1 - Introduowww.pearson.com.brAndrew S. TanenbaumMaarten Van SteenPropriedades das transaes Atmicas: para o mundo exterior, a transao acontece como se fosse indivisvel Consistentes: a transao no viola invariantes de sistema Isoladas: transaes concorrentes no interferem umas nas outras Durveis: uma vez comprometida uma transao, as alteraes so permanentes ACID (para facilitar a decoreba)