Professional Documents
Culture Documents
Arquiteturas em Camadas
Idia Bsica: Cada objeto corresponde ao que definimos como componente, e esses componentes so conectados por meio de chamada de procedimento (remota), p. ex., Java RMI Exemplo: Aplicao distribuda de uma rede de locadoras, onde clientes podem alugar DVDs em diversas filiais.
Idia Bsica: Processos se comunicam por meio de um repositrio comum. Exemplo: Grande conjunto de aplicaes em rede que dependem de um sistema distribudo de arquivos compartilhados o qual praticamente toda a comunicao ocorre por meio de arquivos: Web
Idia Bsica: Nesta arquitetura, processos demonstram o interesse por um evento ou conjunto de eventos (processo se subscreve) e esperam pela notificao de qualquer um desses eventos, gerados por um processo notificador. Em outras palavras, o produtor publica uma informao em um gerenciador de eventos (middleware),e os consumidores se subescrevem para receber as informaes deste gerenciador. Eventos e notificaes. Exemplo: Consultas em vrios bancos de dados
The Many Faces of Publish/Subscribe Eugster et al. ACM Comput. Surv. (35)2:114-131
The Many Faces of Publish/Subscribe Eugster et al. ACM Comput. Surv. (35)2:114-131
Onde so colocados os componentes de software? Como estabelecida a interao entre as peas de software?
Arquiteturas Hbridas
Modelo Cliente-Servidor: questes, questes!! Clientes e Servidores multithreads? Comunicao??? Qual o tipo de aplicao? Sem conexo, no confivel (UDP)? Com conexo, confivel (TCP)?
Usurio
Processamento Dados
Usurio
Processamento Dados
Arquitetura de duas divises fsicas Parte da interface dependente de terminal Aplicaes controlam remotamente a apresentao dos dados
Arquitetura de duas divises fsicas Nesse modelo, o software cliente no faz nenhum processamento exceto o necessrio para apresentar a interface da aplicao
25
Arquitetura de duas divises fsicas Formulrio que precise ser completamente preenchido antes do processamento. Cliente pode verificar a correo e consistncia Editor de texto com funes bsicas no cliente e ferramentas avanadas no servidor
Arquitetura de duas divises fsicas Pcs conectados por meio de uma rede a um sistema de arquivos distribudos ou a um banco de dados
Arquitetura de duas divises fsicas Consulta a Web, com browser um cliente pode construir gradativamente uma enorme cache em disco local com as pginas Web mais recentemente consultadas
Arquiteturas P2P no-estruturadas Algoritmos aleatrios Cada peer possui uma lista de vizinhos (viso parcial) Para encontrar dados, inundar a rede (no pior caso) Importante atualizar a lista de vizinhos Mas como?
Threads que solicitam aos vizinhos a viso parcial (pull) ou que empurram (push) a viso a seus vizinhos Algoritmos que atualizem a vizinhana a cada x unidades de informao enviadas
Arquiteturas P2P no-estruturadas Um dos problemas: como encontrar os dados de maneira eficiente Muitos sistemas utilizam ns especiais, que possuem um ndice de itens de dados Superpeers Caractersticas especiais? Como associar peers comuns a estes superpeers Como escolher estes peers?
Torrent
peer
Arquiteturas Descentralizadas
Arquiteturas Hbridas BitTorrent(Cohenm, 2003)
C
Cada middleware possui um estilo arquitetnico especfico, com o objetivo de simplificar o projeto de aplicaes Como fazer com que um middleware genrico se adapte a aplicao? Middleware inchado Interceptores podem ser usados para interromper o fluxo de execuo para que uma procedimento especfico da aplicao possa ser executado
Autogerenciamento em SDs
Sistemas distribudos devem ser capazes de reagir a mudanas em seu ambiente Ex: Troca dinmica de polticas de alocao de recursos; Troca de codificao voz/vdeo para se adequar a condies de congestionamento na rede Desafio: Deixar que o comportamento reativo ocorra sem interveno humana!
Autogerenciamento em SDs
Idia: Atravs de observaes do comportamento do SD, componentes de estimativa de medies e de anlise coletam dados e realimentam o sistema, modificando parmetros controlveis.
Autogerenciamento em SDs
Alguns Exemplos: Astrolabe: ferramenta para observao de Sds. Resultados podem ser usados para alimentar um componente de anlise para possveis aes corretivas
Resumo
SDs podem ser organizados de diferentes maneiras. Software: Estilos arquitetnicos Fsico: Arquitetura de sistemas
O projeto de sistemas autogerenciadores visa a adaptao do SD ao ambiente em que est sendo executado, obtendo um maior desempenho do mesmo