Uma proposta arquitetural para serviços escaláveis de dados em nuvens

Tamanho: px
Começar a partir da página:

Download "Uma proposta arquitetural para serviços escaláveis de dados em nuvens"

Transcrição

1 Uma proposta arquitetural para serviços escaláveis de dados em nuvens Anderson Fonseca e Silva 1, Marco André Santos Machado 2, Paulo Fernando A. Soares 2, Francisco M. Soares-Neto 2, Vinicius Cardoso Garcia 2, Rodrigo Elia Assad 1 1 C.E.S.A.R. - Centro de Estudos e Sistemas Avançados do Recife 2 Centro de Informática - Universidade Federal de Pernambuco (UFPE) {masm, pfas, fmssn, vcg, Abstract. The increase of the peer-to-peer networks popularity is related to decentralized resources sharing, where peers could exchanging messages among theirs. Through the aggregation and replication techniques, this model offer more robustness and performance when compared to client-server model. In this context, where the peer-to-peer paradigm was selected to development the U-Store, a data cloud solution project, this article presents an architectural proposal towards to create distributed and scalable services, aiming to solve the known issues such as latency, performance, load balancing and so on. Resumo. O aumento da popularidade de redes peer-to-peer, está relacionado com o compartilhamento de recursos descentralizado, onde os pares podem trocar mensagens entre si. Através de técnicas de agregação e de replicação, este modelo oferece mais robustez e desempenho quando comparado ao modelo cliente-servidor. Neste contexto, onde o paradigma peer-to-peer (p2p) foi selecionado para o desenvolvimento do U-Store, uma solução de dados em nuvem, este artigo apresenta uma proposta de arquitetura para a criação de serviços distribuídos e escaláveis, com o objetivo de solucionar questões relativas à latência, desempenho, balanceamento de carga dentre outros. 1. Introdução Após os modelos clientes/servidores dominarem por anos a Internet, novos sistemas distribuídos utilizando-se de estruturas p2p ganharam popularidade rapidamente. Esses sistemas se apresentaram principalmente em duas categorias: file sharing [Iamnitchi et al. 2011] (ex. Napster [Poblocki 2001], Gnutella ou Morpheus) e instant messaging [Herbsleb et al. 2002] (ex. ICQ, AOL Instant Messenger ou Jabber). Alguns desses sistemas podem fornecer funcionalidades de outra categoria, como por exemplo: uma aplicação de file sharing pode fornecer um chat, ou uma aplicação de instant messaging pode permitir o compartilhamento de arquivos entre amigos, porém esses sistemas não oferecem um suporte genérico para aplicações distribuídas, se limitando às categorias mencionadas. Um sistema puramente p2p é um sistema distribuído sem qualquer controle centralizado [Schollmeier 2001]. Neste sistemas todos os nós são nomeados como servant (SERver+cliENT), este termo representa a capacidade dos nós agirem como clientes

2 e servidores ao mesmo tempo. Nos últimos anos, este antigo conceito novamente ganhou atenção dentro nas comunidades da Internet. As vantagens relativas à utilização de redes p2p comparadas com o modelo cliente/servidor tradicional estão na escalabilidade e tolerância a falhas [Das et al. 2009]. Dentro deste contexto, este trabalho apresenta uma proposta arquitetural para a criação e distribuição de serviços entre nós, objetivando a redução no consumo de recursos, aumento de disponibilidade e eliminando pontos centrais de controle e falha. No restante deste artigo as seções serão apresentadas da seguinte forma: Seção 2, Motivação e objetivos; Seção 3, JXTA; Seção 4, Trabalhos relacionados; Seção 5, Uma proposta arquitetural para serviços escaláveis de dados em nuvens; e por fim, na Seção 6, as Considerações finais. 2. Motivação e objetivos A motivação para a elaboração deste estudo surgiu dentro do projeto U-Store, que consiste em uma solução p2p para o storage de arquivos de forma distribuída. Nesta solução, os arquivos são separados em chunks (pedaços com tamanho pré-definido) e gravados em outros nós conectados na rede. Diante disto, devido a sua larga audiência ao comtemplar tanto clientes desktops, quanto clientes com acessos via browser em sua utilização, torna-se primordial a previsão de requisitos como: Utilização de recursos computacionais ociosos; Performance e redução no tempo de resposta; Alta disponibilidade dos serviços. Permitir que nós provenham serviços à rede de forma distribuída e configurável. Neste modelo, para o correto funcionamento da solução, foi desenvolvido um conjunto de serviços ao qual compõe a infra-estrutura base para a execução das funcionalidades de backup e restore de arquivos por parte do usuário, destacados na Tabela 1: Tabela 1. Serviços do projeto U-Store Serviços Descrição AuthenticationService Autenticação do usuário AvailabilityService Checagem de disponibilidade de espaço em disco dos nós conectados à rede ChunkService Registro de chunks no repositório ChunkAvailabilityService Disponibilidade dos chunks na rede ErrorService Controle de erros na rede ExitService Controle de saída dos nós na rede FileDirectory Serviço de sincronização de diretórios FileManagerService Serviço de gerenciamento de arquivos SearchService Serviço de verificação de melhores nós para a distribuição dos chunks MessageController Serviço de verificação e garantia de entrega de mensagens Neste contexto, a adoção de um nó como ponto central de acesso aos serviços descritos, considerando o alto grau de acessos, gerou uma sobrecarga, comprometendo a

3 disponibilidade no funcionamento da solução como um todo. Como solução, a realização dos serviços descritos passou a prever tanto o deployment de forma conjunta, quanto em nós distintos, da mesma forma em que tornou-se possível a adição de novos serviços à rede, permitindo sua descoberta e utilização por nós conectados de forma transparente. Esta abordagem permitiu a redução de sobrecarga no acesso aos serviços, através da eliminação de pontos únicos de acesso; o aumento de desempenho, através da descoberta dos serviços em nós vizinhos; e da alta disponibilidade, por meio do uso de técnicas para o balanceamento das requisições aos serviços. 3. JXTA JXTA [Wilson 2002] é uma especificação para a plataforma p2p desenvolvida pela Sun Microsystems sob a direção de Bill Joy e Mark Clary, propondo os seguintes objetivos: Nós devem estar habilitados a se descobrirem; Nós devem se auto-organizar em grupos; Nós devem publicar e descobrir recursos na rede; Nós devem se comunicar uns com os outros; Nós devem monitorar uns aos outros; Não deve requerer o uso de qualquer linguagem proprietária ou sistema operacional; Não deve obrigar o uso de qualquer transporte ou tecnologia de rede proprietária; Não deve obrigar o uso de qualquer autenticação, segurança ou modelo de encriptação proprietária; Uma das principais funcionalidades da plataforma é fornecer um padrão, permitindo que desenvolvedores comerciais e de código-aberto criem serviços interoperáveis e aplicações. O JXTA foi modelado utilizando um pequeno número de protocolos para o tratamento de serviços. Estes protocolos podem ser implementados utilizando qualquer linguagem, permitindo dispositivos heterogêneos se comunicarem um com o outro em uma rede p2p. Conforme [Brookshier et al. 2002], o JXTA possui seis protocolos, os quais são descritos na Tabela 2: Tabela 2. Protocolos JXTA Protocolos Descrição Peer Resolver Protocol (PRP) Envio e recebimento de consultas a outros nós. Peer Discovery Protocol (PDP) Publicação e descoberta de advertisement. Peer Information Protocol (PIP) Obter a informação de status do nó. Pipe Binding Protocol (PBP) Criação de canais de comunicação entre os nós. Peer Endpoint Protocol (PEP) Encontrar rotas entre dois nós. Rendezvous Protocol (RVP) Propagação de mensagens na rede. Este modelo de implementação na forma de um network overlay, age como uma hashtable virtual contendo os índices de todos os objetos publicados através do uso de advertisements. Deste modo, o JXTA implementa o uso de DHT abstraindo o desenvolvedor de preocupações relativas à performance na comunicação entre nós, permitindo um maior foco no negócio da solução.

4 Figura 1. Arquitetura do JXTA A Figura 1 apresenta uma visão da arquitetura JXTA dividida em três camadas: Application Layer (implementada sobre a camada de serviços, fornecendo os recursos para a construção de aplicativos como instant messaging), Services Layer (implementa serviços como: busca de recursos em nós, compartilhamento de documentos e autenticação) e Core Layer (inclui os seis principais protolos descritos anteriormente). A arquitetura JXTA segundo [Buford 2009], possui três tipos de nós categorizados da seguinte forma: Minimal-Edge Peers - Implementam somente as funcionalidades básicas do JXTA; Full-Edge Peers - Implementam as funcionalidades básicas e os serviços padrões oferecidos pelo JXTA; Super-Peers - Implementam e provisionam recursos para suportar a implantação e operação de uma rede JXTA. O JXTA foi utilizado na elaboração do projeto U-Store, devido a sua maturidade, modelo de distribuição open-source, documentação e fontes disponíveis. 4. Trabalhos relacionados Nesta seção são apresentados os trabalhos relacionados ao contexto de P2P data storage, considerando os seguintes critérios: Projeto arquitetural disponível; Abordagem focada em composição e distribuição de serviços; Criação de grupos ou papéis, subsidiando o estudo na divisão de responsabilidades entre nós. Desta forma, [Martalo et al. 2010] apresenta um modelo arquitetural baseado no Chord overlay scheme [Flocchini et al. 2004], classificando os nós em três diferentes grupos: Super Nodes, que cuidam do kernel da aplicação, fornecendo um mecanismo para o roteamento das mensagens e permitindo que os clientes encontrem os nós de Storage, sua execução deve prevêr alta disponiblidade (24x7), podendo ocorrer danos à rede em caso de mau funcionamento. Storage Nodes, que guardam os fragmentos publicados pelos Client Nodes e por fim, Client Nodes que funcionam como publicadores e consumidores de recursos através do sistema. O P2PCS (Peer-to-Peer Cloud System) [Babaoglu et al. 2012] apresenta uma proposta arquitetural e um protótipo, para disponibilizar uma infra-estrutura como serviço

5 através de uma Cloud. O modelo tem como base a utilização de algoritmos gossip-based [Fernandess et al. 2007], implementando uma coleção de processos executadas em hosts separados. Cada processo é composto por diversos módulos organizados em camadas. Como foco, este trabalho apresenta a manutenção da coesão entre nós não-confiáveis, e o particionamento de recursos em múltiplas subclouds que podem ser atribuídas individualmente à usuários da rede. A implementação do protótipo utiliza o JRMI [Waldo 1998] para o gerenciamento de comunicação remota, cobrindo serviços como gerenciamento de instâncias, monitoramento e agregação de serviços, e peer sampling service, que fornece a cada nó uma lista de outros nós, para a troca de mensagens. O FARSITE [Adya et al. 2002] assume uma escala de aproximadamente máquinas, onde nenhuma das quais agem como servidores dedicados, porém são interconectadas não considerando uma topologia de redes em particular. Neste modelo, cada máquina pode executar três papéis: como clients, membros de um directory group, e como file host. Como client, são máquinas que interagem diretamente com o usuário, como um directory group, gerencia um conjunto de máquinas que coletivamente fornecem informações e metadados dos arquivos, guardando-as redundantemente em todas as máquinas pertencentes ao grupo, e por fim, como file hosts, para o recebimento das replicas de arquivos encriptadas. O PeerMart [Hausheer and Stiller 2005] implementa sua arquitetura tendo como base o Pastry [Rowstron and Druschel 2001], neste modelo os nós são definidos como: Consumer, Provider e Brokers, onde um nó pode assumir um ou mais papéis ao mesmo tempo. O destaque nesta arquitetura são os nós intermediários (Brokers), sendo responsáveis por se adequar às necessidades demandadas pelo nós Consumers e Providers de maneira eficiente, possuindo uma lista para cada serviço sob sua responsabilidade, e notificando os nós numericamente mais próximos, sobre a oferta de um novo serviço. 5. Uma proposta arquitetural para serviços escaláveis de dados em nuvens Nesta seção são apresentadas as definições relativas à análise, projeto, implementação e implantação de serviços, utilizando como infra-estrutura a plataforma JXTA. Na Figura 2 é apresentada a visão geral da arquitetura, onde os nós, classificados em: Client e Service contribuem para a execução das funcionalidades do projeto U-Store, ora fornecendo respostas, ora agindo como um nó requisitante. Também é identificada a conexão entre nós clientes que se utiliza do procotolo HTTP 1 para a troca de mensagens de forma direta, utilizada para a distribuição de chunks, como exemplo. O nó nomeado como Web Application Server, neste contexto, surge como uma alternativa para a exposição dos serviços definidos dentro da rede p2p, para um contexto cliente-servidor expostos via REST [Webber 2010], agindo como um fornecedor dos serviços internos da solução, para consumo por outros aplicativos. Neste modelo, é possível acrescentar nós de serviços à medida em que ocorrem a degradação no tempo de resposta, o aumento no grau de sobrecarga da rede, devido à um alto número de requisições e a queda de performance na execução das funcionalidades. 1

6 Figura 2. Visão geral da arquitetura Para a definição dos serviços, inicialmente foram considerados fatores importantes dentro do contexto de storage distribuido como: classificação dos nós, quanto ao seu papel no propósito do projeto; implantação dos serviços quanto à sua importância dentro da classificação dos nós; interface de construção dos serviços utilizando o JXTA como infra-estrutura; e por fim, exposição dos serviços para uma audiência web em formato de webservices. Para classificação dos nós, o projeto U-Store formalizou a seguinte classificação: Client: Fornece a GUI para a interação do usuário com as funcionalidades de backup e restore, contendo também serviços para a gravação e replicação de chunks, análise de disponibilidade dos nós, dentre outros. Proxy: Fornece a descoberta, disponibilização e roteamento dos serviços para os nós clientes. Server/Service: Fornece os serviços necessários para a operacionalização da solução no que se relaciona à autenticação, gerenciamento de arquivos, registro de informações de persistência relativos à gravação e restauração de chunks. A Figura 3 apresenta uma visão para a implantação dos serviços (descritos na Tabela 1), quanto à sua importância dentro da classificação dos nós, como se segue: Os nós clientes possuem como responsabilidade o fornecimento de informações relativos à sua condição dentro da rede, dentre estas: espaço em disco disponível para compartilhamento, tempo conectado à rede de forma periódica e a execução do serviço de gravação de chunks através do ChunkService. Os nós de serviços devem prover funcionalidades de gravação e recuperação de chunks (RestoreService e BackupService), gestão e autenticação de usuários (AuthenticationService) e gerenciamento de arquivos (FileManagerService).

7 Figura 3. Classificação dos nós e serviços relacionados Uma das preocupações principais dentro desta proposta, diz respeito à condição de criação e consumo dos serviços de forma transparente para o desenvolvedor, neste sentido, foi definido um conjunto de componentes que utilizando como base a plataforma JXTA, provê uma abstração para novas implementações. Neste modelo, foram definidos dois componentes: Service e ServiceConsumer. O primeiro, abstrai o modo como os serviços são registrados e publicados pela plataforma, e o último, é responsável por abstrair a descoberta dos serviços publicados, o envio de mensagens aos serviços encontrados e o controle no retorno das requisições solicitadas. Figura 4. Modelo para a criação e publicação de serviços Na Figura 4 os serviços FileManagerService, ChunkService, AuthenticationService herdam a classe Service, preocupando-se somente com as implementações de suas funcionalidades. Para o consumo destes serviços, o componente AuthenticationService- Consumer estende o componente ServiceConsumer.

8 5.1. Descoberta e enfileiramento dos serviços Os serviços utilizados pela plataforma são publicados e descobertos utilizando o Peer Discovery Protocol - PDP fornecido pelo JXTA. Porém, para a descoberta e entrega do serviço, além da implementação fornecida pela plataforma, foi desenvolvido um componente (ServiceWatcher), que encapsula o protocolo PDP, abstraindo do desenvolvedor o tratamento de erros de indisponiblidade, cache e resolução na troca de mensagens, caso haja o mesmo serviço publicado em vários nós de serviço. Devido a natureza assícrona do modelo p2p utilizando JXTA, e a grande quantidade de requisições para envio e recebimento de chunks pela solução, foram definidas filas de envio e recebimento de mensagens, onde toda a comunicação entre serviços na rede se utilizam dos componentes (MessageSendQueue e MessageReceiveQueue), reduzindo dessa forma a sobrecarga de requisições. A utilização de filas juntamente com o serviço de controle de mensagens (MessageController), garante a entrega e recebimento das mesmas, através do uso de tokens de identificação de cada mensagem enviada, podendo ocorrer o reenvio, caso o tempo de expiração de cada mensagem seja atingido Serviços P2P e webservices Para a exposição dos serviços, é utilizado o estilo arquitetural para sistemas de hipermídia distribuída conhecido como REST (REpresentational State Transfer). Neste contexto, a implementação JXTA se utiliza do servlet container Jetty 2 de forma embeddable utilizando o protocolo HTTP. Na implementação, para a exposição dos serviços como webservices é utilizado o Jersey [Hadley et al. 2010], desta forma, os serviços anteriormente consumidos somente entre os nós conectados, podem ser expostos de forma simples com a utilização de anotações fornecidas por esta implementação. Figura 5. Trecho de código do serviço REST para autenticação Na Figura 5, o serviço AuthenticationService (A) é exposto como um serviço REST através da classe AuthenticantionRestService de forma delegada. 2

9 5.3. Segurança A segurança no acesso aos serviços desenvolvidos, se utiliza da solução de grupos implementados pela própria plataforma JXTA, desta forma, é possivel a criação de grupos privados, gerenciados por meio do Membership Service Implementation, no qual pode ser utilizado como forma de autenticação tanto o PasswdMembershipService com autenticação de usuários e senhas, bem como, certificação digital (PKI) com o uso do PSEMembershipService [Wilson 2002] Validação Para validar a utilização da proposta foi utilizado o paradigma GQM (Goal /Question/Metric) proposto por [Basili et al. 1994], com o planejamento definido conforme a Tabela 3. Objeto de estudo Equipe de avaliação Características Tabela 3. Planejamento Proposta Arquitetural para a criação de serviços escaláveis de dados em nuvens Equipe do projeto U-Store composta por 2 Doutores, 1 Mestre, 8 Mestrandos Verificar a carga de requisições em serviços disponiveis em um único nó de serviço; Verificar o comportamento após a adição de outros nós de serviços na mesma rede; Utilizar como itens de verificação os consumos de memória e CPUs. Dentro das definições para a validação da arquitetura foi elaborado um cenário com as seguintes caracterísitcas: Dezoito nós clientes, 1 nó Super-Peer e 1 nó de serviços; Envio simultâneo de 10,5Gb de arquivos; Utilização da funcionalidade de backup; Submissão de carga de arquivos através da GUI; Rede Windows interna com 100Mbps. Nesta configuração foi definida a utilização da funcionalidade de backup, por envolver o consumo de serviços disponíveis em nós clientes e de nós de serviços simultâneamente. Para a medição dos resultados, foi o utilizada a ferramenta JConsole 3, monitorando os resultados somente para o nó de serviços. Na Figura 6, são exibidos os resultados obtidos considerando o cenário proposto, onde é possivel identificar o tempo total de testes em 1 hora e 20 minutos de duração, com envio de arquivos para a gravação de forma distribuída. Nos quadros, são apresentados em ordem de cima para baixo, os dados relativos ao Heap Memory Usage, a quantidade de Threads utilizadas, e por fim, o CPU Usage. 3

10 Figura 6. Resultados da validação arquitetural Nesta validação, após um intervalo de 35 minutos utilizando as configurações propostas no cenário inicial, foram acrescentados mais 2 nós de serviços à rede. Desta forma, é possível identificar que a partir das 23:25h, as informações relativas à utilização de Threads e o CPU Usage apresentaram alterações quanto à redução no consumo de recursos do nó de serviços, e que ocorre uma estabilização no Heap Memory Usage, devido à distribuição de requisições em outros nós de serviços. Na Tabela 4 são apresentadas as médias de tempo total (envio e recebimento) de cada mensagem, enviada aos principais serviços envolvidos na operação de Backup. Tabela 4. Roundtrip messages (em segundos) Serviços 1 Serviço (Nó) 3 Serviço (Nós) AuthenticationService 1,000 0,582 FileManagerService 1,000 0,130 BackupService 2,000 1,161 ChunkService 1,750 0,956

11 6. Considerações finais Este artigo apresentou uma proposta arquitetural dentro do contexto de storage em nuvens, utilizando a implementação JXTA como solução para a construção de redes peer-to-peer, bem como, a classificação definida para os nós dentro do projeto U-Store, sua organização e distribuição em serviços, de forma a reduzir a sobrecarga de requisições na solução. Ainda neste trabalho, foi apresentado um modelo para a implementação de interfaces para a construção de novos serviços utilizando JXTA, o uso de filas de mensagens para a melhoria na comunicação entre os nós, e um serviço de descoberta, cache e delegação de serviços aos nós clientes (ServiceWatcher). Apresentou a possiblidade de exposição de serviços como webservices, através do uso da implementação REST, se utilizando de um web conteiner provido pela plataforma JXTA. Desta forma, é possível implementar de forma configurável o deployment de serviços em nós de forma a se obter um maior ganho de qualidade, na construção de redes de dados em nuvens de forma escalável. Referências Adya, A., Bolosky, W. J., Castro, M., Cermak, G., Chaiken, R., Douceur, J. R., Howell, J., Lorch, J. R., Theimer, M., and Wattenhofer, R. (2002). Farsite: Federated, available, and reliable storage for an incompletely trusted environment. In OSDI. Babaoglu, O., Marzolla, M., and Tamburini, M. (2012). Design and implementation of a p2p cloud system. SAC 27th Symposium On Applied Computing, page 1. Basili, V. R., Caldiera, G., and Rombach, H. D. (1994). The goal question metric approach. Brookshier, D., Govoni, D., Krishnan, N., and Soto, J. C. (2002). JXTA: Java P2P Programming. Sams, Indianapolis, IN, USA. Buford, J. (2009). P2P networking and applications. Elsevier/Morgan Kaufmann, Amsterdam Boston. Das, S., Agrawal, D., and Abbadi, A. E. (2009). Elastras: An elastic transactional data store in the cloud. Fernandess, Y., Fernández, A., and Monod, M. (2007). A generic theoretical framework for modeling gossip-based algorithms. ACM SIGOPS Operating Systems Review, 41(5):19. Flocchini, P., Nayak, A., and Xie, M. (2004). Hybrid-chord: A peer-to-peer system based on chord. In Ghosh, R. K. and Mohanty, H., editors, ICDCIT, volume 3347 of Lecture Notes in Computer Science, pages Springer. Hadley, M., Pericas-Geertsen, S., and Sandoz, P. (2010). Exploring hypermedia support in jersey. In Proceedings of the First International Workshop on RESTful Design, WS- REST 10, pages 10 14, New York, NY, USA. ACM. Hausheer, D. and Stiller, B. (2005). Peermart : The technology for a distributed auctionbased market for peer-to-peer services. Computer, 3(C):

12 Herbsleb, J. D., Atkins, D. L., Boyer, D. G., Handel, M., and Finholt, T. A. (2002). Introducing instant messaging and chat in the workplace. In CHI, pages Iamnitchi, A., Ripeanu, M., Santos-Neto, E., and Foster, I. (2011). The small world of file sharing. IEEE Transactions on Parallel and Distributed Systems, 22(7): Martalo, M., Picone, M., Bussandri, R., and Amoretti, M. (2010). A practical network coding approach for peer-to-peer distributed storage IEEE International Symposium on Network Coding NetCod, pages 1 6. Poblocki, K. (2001). The napster network community. First Monday, 6(11). Rowstron, A. and Druschel, P. (2001). Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In Middleware 2001, pages Springer. Schollmeier, R. (2001). [16] a definition of peer-to-peer networking for the classification of peer-to-peer architectures and applications. In Proceedings of the First International Conference on Peer-to-Peer Computing, P2P 01, pages 101, Washington, DC, USA. IEEE Computer Society. Waldo, J. (1998). Remote procedure calls and java remote method invocation. IEEE Concurrency, 6(3):5 7. Webber, J. (2010). REST in practice. O Reilly, Farnham Sebastopol, CA. Wilson, B. (2002). JXTA. New Riders, Indianapolis, Ind.

Uma abordagem peer-to-peer para streaming de vídeo em nuvens privadas

Uma abordagem peer-to-peer para streaming de vídeo em nuvens privadas Uma abordagem peer-to-peer para streaming de vídeo em nuvens privadas Removed for double blind review 1 Abstract. With the growing the multimedia content audience on the web, it s important to provide

Leia mais

JXTA. Alessandro Vasconcelos Ferreira de Lima. avfl@cin.ufpe.br

JXTA. Alessandro Vasconcelos Ferreira de Lima. avfl@cin.ufpe.br JXTA Alessandro Vasconcelos Ferreira de Lima Roteiro Motivação Introdução Arquitetura de JXTA Elementos de JXTA Os Protocolos Comparações e Desvantagens Conclusão Motivação Limitações do Modelo Cliente

Leia mais

Cloud Disk Drive: Uma Abordagem para a Criação de Discos Virtuais de Baixo Custo Utilizando Redes p2p

Cloud Disk Drive: Uma Abordagem para a Criação de Discos Virtuais de Baixo Custo Utilizando Redes p2p Cloud Disk Drive: Uma Abordagem para a Criação de Discos Virtuais de Baixo Custo Utilizando Redes p2p Anderson Fonseca e Silva 1, Vinicius Cardoso Garcia 1, Rodrigo Elia Assad 2, Frederico Durão 3 1 Universidade

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Membership Grupos dinâmicos Membros entram e saem dos grupos Membros podem falhar (crash) Grupos são criados e destruídos em tempo

Leia mais

Definição São sistemas distribuídos compostos de nós interconectados, aptos a se auto-organizar em topologias de rede, com o intuito de compartilhar

Definição São sistemas distribuídos compostos de nós interconectados, aptos a se auto-organizar em topologias de rede, com o intuito de compartilhar Redes Peer-to-Peer Redes Peer-to to-peer Arquitetura de Redes P2P Integridade e Proteção Redes Peer-to-Peer (P2P) São sistemas distribuídos nos quais os membros da rede são equivalentes em funcionalidade

Leia mais

Definição São sistemas distribuídos compostos de nós interconectados, aptos a se auto-organizar em topologias de rede, com o intuito de compartilhar

Definição São sistemas distribuídos compostos de nós interconectados, aptos a se auto-organizar em topologias de rede, com o intuito de compartilhar Redes Peer- Redes Peer- (P2P) São sistemas distribuídos nos quais os membros da rede são equivalentes em funcionalidade Permitem que os pares compartilhem recursos diretamente, sem envolver intermediários

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Arquiteturas Capítulo 2 Agenda Estilos Arquitetônicos Arquiteturas de Sistemas Arquiteturas Centralizadas Arquiteturas Descentralizadas Arquiteturas

Leia mais

Aplicações P2P. André Lucio e Gabriel Argolo

Aplicações P2P. André Lucio e Gabriel Argolo Aplicações P2P André Lucio e Gabriel Argolo Tópicos Internet Peer-to-Peer (Introdução) Modelos (Classificação) Napster Gnutella DHT KaZaA Razões para o Sucesso da Internet Capacidade de interligar várias

Leia mais

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores Camadas de Serviço de Hardware e Software em Sistemas Distribuídos Arquiteutra de Sistemas Distribuídos Introdução Applications, services Adaptação do conjunto de slides do livro Distributed Systems, Tanembaum,

Leia mais

PEER DATA MANAGEMENT SYSTEM

PEER DATA MANAGEMENT SYSTEM PEER DATA MANAGEMENT SYSTEM INTRODUÇÃO, INFRA-ESTRUTURA E MAPEAMENTO DE ESQUEMAS AGENDA Data Management System Peer Data Management System P2P Infra-estrutura Funcionamento do PDMS Mapeamento de Esquemas

Leia mais

Sistemas Distribuídos Arquitetura de Sistemas Distribuídos Aula II Prof. Rosemary Silveira F. Melo Arquitetura de Sistemas Distribuídos Conceito de Arquitetura de Software Principais elementos arquiteturais

Leia mais

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2) Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema

Leia mais

Aula 03-04: Modelos de Sistemas Distribuídos

Aula 03-04: Modelos de Sistemas Distribuídos UNIVERSIDADE Computação Aula 03-04: Modelos de Sistemas Distribuídos 2o. Semestre / 2014 Prof. Jesus Principais questões no projeto de um sistema distribuído (SD) Questão de acesso (como sist. será acessado)

Leia mais

COMPARTILHAMENTO DE INFORMAÇÕES ENTRE COMPUTADORES ATRAVÉS DA TECNOLOGIA PEER-TO-PEER (P2P) USANDO A PLATAFORMA JXTA

COMPARTILHAMENTO DE INFORMAÇÕES ENTRE COMPUTADORES ATRAVÉS DA TECNOLOGIA PEER-TO-PEER (P2P) USANDO A PLATAFORMA JXTA COMPARTILHAMENTO DE INFORMAÇÕES ENTRE COMPUTADORES ATRAVÉS DA TECNOLOGIA PEER-TO-PEER (P2P) USANDO A PLATAFORMA JXTA José Voss Junior (FURB) juniorvs@inf.furb.br Francisco Adell Péricas (FURB) pericas@furb.br

Leia mais

Arquitetura de uma Rede JXTA

Arquitetura de uma Rede JXTA Page 1 of 6 Redes de Proteção SP Produtos de Rede Confiança e credibilidade. fone Produtos TrendNet: qualidade, (011) 6197-0707 garantia e ótimo custo/benefício. www.tudoderedesdeprotecao.com.br http://www.trendware.com.br

Leia mais

Peer-to-Peer. Introdução. Motivação. Definição. Definição. Definição. Everton Flávio Rufino Seára Murilo R. de Lima

Peer-to-Peer. Introdução. Motivação. Definição. Definição. Definição. Everton Flávio Rufino Seára Murilo R. de Lima Introdução Peer-to-Peer Everton Flávio Rufino Seára Murilo R. de Lima Peer-to-Peer (P2P) é a base da operação de sistemas distribuídos como SETI@home e Kazaa; caracterizada por compartilhamento direto

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos 11 Objetivos Este capítulo apresenta uma introdução aos sistemas distribuídos em geral Arquiteturas de cliente servidor Características das arquiteturas de 2 e 3 camadas Ambiente

Leia mais

Resumo. Introdução História Caracteristicas Exemplos Arquitetura Distribuição Vertical vs Distribuição Horizontal Segurança Conclusão

Resumo. Introdução História Caracteristicas Exemplos Arquitetura Distribuição Vertical vs Distribuição Horizontal Segurança Conclusão Peer 2 Peer (P2P) Resumo Introdução História Caracteristicas Exemplos Arquitetura Distribuição Vertical vs Distribuição Horizontal Segurança Conclusão O que é P2P? Introdução Tipo de arquitetura de rede

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS Arquiteturas www.pearson.com.br capítulo 2 slide 1 2.1 Estilos Arquitetônicos Formado em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Comunicação de Grupos Peer to Peer Comunicação de Grupos Modelos Anteriores - Comunicação envolvia somente duas partes. RPC não permite comunicação de um processo com vários outros

Leia mais

Service Oriented Architecture SOA

Service Oriented Architecture SOA Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)

Leia mais

Ambiente Colaborativo P2P para o projeto PDSCE 1

Ambiente Colaborativo P2P para o projeto PDSCE 1 Ambiente Colaborativo P2P para o projeto PDSCE 1 Tiago Antônio Rizzetti, Celio Trois, João Carlos Damasceno Lima, Iara Augustin Grupo de Pesquisa em Sistemas de Computação Móvel (GMob) Centro de Tecnologia,

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 5 Servidores de Aplicação

Leia mais

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com. Consumindo um Web Service através de uma Aplicação Comercial em Android Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.br 08/2014 Agenda Introdução Conceitos Web Service Por que utilizar

Leia mais

Padrões Arquiteturais e de Integração - Parte 1

Padrões Arquiteturais e de Integração - Parte 1 1 / 58 - Parte 1 Erick Nilsen Pereira de Souza T017 - Arquitetura e Design de Aplicações Análise e Desenvolvimento de Sistemas Universidade de Fortaleza - UNIFOR 11 de fevereiro de 2015 2 / 58 Agenda Tópicos

Leia mais

Trabalho de Sistemas Distribuídos

Trabalho de Sistemas Distribuídos Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Petrópolis 2015, v-1.0 Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Trabalho sobre sistemas distribuídos e suas tecnologias. Universidade

Leia mais

Capítulo II Modelos de Programação Distribuída (parte 2)

Capítulo II Modelos de Programação Distribuída (parte 2) Capítulo II Modelos de Programação Distribuída (parte 2) From: Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, Addison-Wesley From: Cardoso, Jorge, Programação de

Leia mais

Ambiente Colaborativo P2P 1 para o projeto PDSCE

Ambiente Colaborativo P2P 1 para o projeto PDSCE Ambiente Colaborativo P2P 1 para o projeto PDSCE Tiago Antônio Rizzetti, Celio Trois, João Carlos Damasceno Lima, Iara Augustin Curso de Ciência da Computação Sistemas de Computação Móvel (Gmob) Universidade

Leia mais

Sistemas Distribuídos. Introdução

Sistemas Distribuídos. Introdução Sistemas Distribuídos Introdução Definição Processos Um sistema distribuído é um conjunto de computadores independentes, interligados por uma rede de conexão, executando um software distribuído. Executados

Leia mais

Desenvolvimento de uma Rede de Distribuição de Arquivos. Development of a File Distribution Network

Desenvolvimento de uma Rede de Distribuição de Arquivos. Development of a File Distribution Network Desenvolvimento de uma Rede de Distribuição de Arquivos Development of a File Distribution Network Desenvolvimento de uma Rede de Distribuição de Arquivos Development of a File Distribution Network Talles

Leia mais

Arquitetura dos Sistemas de Informação Distribuídos

Arquitetura dos Sistemas de Informação Distribuídos Arquitetura dos Sistemas de Informação Distribuídos Quando se projeta um sistema cuja utilização é destinada a ser feita em ambientes do mundo real, projeções devem ser feitas para que o sistema possa

Leia mais

Ciência de Computadores Sistemas Distribuídos e Móveis

Ciência de Computadores Sistemas Distribuídos e Móveis Ciência de Computadores Sistemas Distribuídos e Móveis Lista de Exercícios Data: 4 de Novembro de 2013 Questões sobre o capítulo 1, Tanenbaum & van Steen: Fundamentos 1) Explique o significado de transparência,

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

Um Sistema de Arquivos Compartilhado em Nível de Usuário Baseado em Tabelas Hash Distribuídas

Um Sistema de Arquivos Compartilhado em Nível de Usuário Baseado em Tabelas Hash Distribuídas Um Sistema de Arquivos Compartilhado em Nível de Usuário Baseado em Tabelas Hash Distribuídas Pedro Eugênio Rocha, Luiz Carlos Erpen de Bona Departamento de Informática Universidade Federal do Paraná Caixa

Leia mais

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS 1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização

Leia mais

Cliente/Servidor. Conceitos Gerais. Graça Bressan. Graça Bressan/LARC 2000 1

Cliente/Servidor. Conceitos Gerais. Graça Bressan. Graça Bressan/LARC 2000 1 Cliente/Servidor Conceitos Gerais Graça Bressan Graça Bressan/LARC 2000 1 Forças de marketing que conduzem à arquitetura cliente/servidor "Cliente/Servidor é um movimento irresistível que está reformulando

Leia mais

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos Introdução a Sistemas Distribuídos Definição: "Um sistema distribuído é uma coleção de computadores autônomos conectados por uma rede e equipados com um sistema de software distribuído." "Um sistema distribuído

Leia mais

MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER

MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER TÁSSIO JOSÉ GONÇALVES GOMES tassiogoncalvesg@gmail.com MINICURSO WINDOWS SERVER 2008 TÁSSIO GONÇALVES - TASSIOGONCALVESG@GMAIL.COM 1 CONTEÚDO Arquitetura

Leia mais

O que é Grid Computing

O que é Grid Computing Grid Computing Agenda O que é Grid Computing Grid vs Cluster Benefícios Tipos de Grid Aplicações Ferramentas e padrões Exemplos no mundo Exemplos no Brasil Grid no mundo dos negócios Futuro O que é Grid

Leia mais

Tópicos Especiais em Redes de Telecomunicações

Tópicos Especiais em Redes de Telecomunicações Tópicos Especiais em Redes de Telecomunicações Redes definidas por software e Computação em Nuvem Prof. Rodrigo de Souza Couto PARTE 1 REDES DEFINIDAS POR SOFTWARE (SDN) 2 Bibliografia Esta aula é baseada

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Aula 2 Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Por que definir uma arquitetura?

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Comunicação coletiva Modelo Peer-to-Peer Slide 6 Nielsen C. Damasceno Introdução Os modelos anteriores eram realizado entre duas partes: Cliente e Servidor. Com RPC e RMI não é possível

Leia mais

João Rocha Marco Antônio Domingues. Eduardo Souto Guthemberg Silvestre Carlos Kamienski Djamel Sadok

João Rocha Marco Antônio Domingues. Eduardo Souto Guthemberg Silvestre Carlos Kamienski Djamel Sadok GPRT/UFPE GPRT/UFPE Peer-to-Peer (P2P) Computação Colaborativa na Internet Minicurso SBRC - (alterado por Andrea Krob) Autores Originais (UFPE) João Rocha Marco Antônio Domingues Arthur Callado Eduardo

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

Revisão. Karine Peralta karine.peralta@pucrs.br

Revisão. Karine Peralta karine.peralta@pucrs.br Revisão Karine Peralta Agenda Revisão Evolução Conceitos Básicos Modelos de Comunicação Cliente/Servidor Peer-to-peer Arquitetura em Camadas Modelo OSI Modelo TCP/IP Equipamentos Evolução... 50 60 1969-70

Leia mais

Implementação de um Algoritmo para Busca em Redes Peer-to-Peer

Implementação de um Algoritmo para Busca em Redes Peer-to-Peer Implementação de um Algoritmo para Busca em Redes Peer-to-Peer André Panisson, Maria Janilce Bosquiroli Almeida, Liane Margarida Tarouco, Lisandro Zambenedetti Granville Universidade Federal do Rio Grande

Leia mais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN SISTEMAS OPERACIONAIS Apostila 03 Estrutura do Sistema Operacional UNIBAN 1.0 O Sistema Operacional como uma Máquina Virtual A arquitetura (conjunto de instruções, organização de memória, E/S e estrutura

Leia mais

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente da plataforma, bastando para isso

Leia mais

Armazenamento em nuvem é feito em serviços que poderão ser acessados de diferentes lugares, a qualquer momento e utilizando diferentes dispositivos,

Armazenamento em nuvem é feito em serviços que poderão ser acessados de diferentes lugares, a qualquer momento e utilizando diferentes dispositivos, Nuvem cloud Armazenamento em nuvem é feito em serviços que poderão ser acessados de diferentes lugares, a qualquer momento e utilizando diferentes dispositivos, não havendo necessidade de armazenamento

Leia mais

Rede Peer-To-Peer. Conteúdo

Rede Peer-To-Peer. Conteúdo Rede Peer-To-Peer Universidade Federal do Maranhão Centro de Ciências Exatas e Tecnologia Pós-Graduação em Engenharia de Eletricidade Estágio Docente Prof. Dr. Mário Meireles Teixeira Mestrando: Flávio

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

The Eucalyptus Open- source Cloud-computing System. Janaina Siqueira Lara Wilpert Marcelo Scheidt Renata Silva

The Eucalyptus Open- source Cloud-computing System. Janaina Siqueira Lara Wilpert Marcelo Scheidt Renata Silva The Eucalyptus Open- source Cloud-computing System Janaina Siqueira Lara Wilpert Marcelo Scheidt Renata Silva Sumário Introdução Trabalhos Correlatos Eucalyptus Design Conclusões Visão Geral Introdução:

Leia mais

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br Sistemas Distribuídos Introdução Edeyson Andrade Gomes www.edeyson.com.br Agenda Definição de Sistemas Distribuídos Evolução Histórica Exemplos Comparação com Sistemas Centralizados Conclusão 2 Definição

Leia mais

The Eucalyptus Open-source Cloud-computing System

The Eucalyptus Open-source Cloud-computing System The Eucalyptus Open-source Cloud-computing System O sistema Open Source de nuvens computacionais Eucalyptus Daniel Nurmi, Rich Wolski, Chris Grzegorczyk, Graziano Obertelli, Sunil Soman, Lamia Youseff,

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA Sistemas Distribuídos Mestrado em Ciência da Computação 1o. Semestre / 2006 Prof. Fábio M. Costa fmc@inf.ufg.br www.inf.ufg.br/~fmc/ds MSc2006 Aula

Leia mais

Proposta para Grupo de Trabalho. GT-Computação em Nuvem para Ciência: Armazenamento de Dados. Roberto Samarone dos Santos Araujo

Proposta para Grupo de Trabalho. GT-Computação em Nuvem para Ciência: Armazenamento de Dados. Roberto Samarone dos Santos Araujo Proposta para Grupo de Trabalho GT-Computação em Nuvem para Ciência: Armazenamento de Dados Roberto Samarone dos Santos Araujo Agosto/2011 1 Título GT-Computação em Nuvem para Ciência: Armazenamento de

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Chord. Tecnologias de Middleware. Fernando Martins - fmp.martins@gmail.com

Chord. Tecnologias de Middleware. Fernando Martins - fmp.martins@gmail.com Chord Tecnologias de Middleware 2006/2007 Fernando Martins - fmp.martins@gmail.com Tópicos Objectivo Motivação Peer-To-Peer Chord Descrição Geral Características Distintivas Comparação DNS Modelo do Sistema

Leia mais

Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware.

Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware. Camadas de Software - o Middleware Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas Modelos de Arquitecturas para sistemas distribuidos Interfaces e Objectos Requerimentos para Arquitecturas Distribuídas

Leia mais

Modelos de Arquiteturas. Prof. Andrêza Leite andreza.lba@gmail.com

Modelos de Arquiteturas. Prof. Andrêza Leite andreza.lba@gmail.com Modelos de Arquiteturas Prof. Andrêza Leite andreza.lba@gmail.com Agenda Introdução Arquitetura de Sistemas Distribuídos Clientes e Servidores Peer-to-Peer Variações Vários Servidores Proxy Código Móvel

Leia mais

RMI: Uma Visão Conceitual

RMI: Uma Visão Conceitual RMI: Uma Visão Conceitual Márcio Castro, Mateus Raeder e Thiago Nunes 11 de abril de 2007 Resumo Invocação de Método Remoto (Remote Method Invocation - RMI) trata-se de uma abordagem Java para disponibilizar

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

Eduardo Bezerra. Editora Campus/Elsevier Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 11 Arquitetura do sistema Nada que é visto, é visto de uma vez e por completo. --EUCLIDES

Leia mais

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Objetos distribuídos e invocação remota Introdução Comunicação entre objetos distribuídos Chamada de procedimento remoto Eventos e notificações Objetos

Leia mais

Planejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com

Planejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com Planejamento Estratégico de TI Felipe Pontes felipe.pontes@gmail.com VPN Virtual Private Network Permite acesso aos recursos computacionais da empresa via Internet de forma segura Conexão criptografada

Leia mais

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com)

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com) ARQUITETURA DE SISTEMAS Cleviton Monteiro (cleviton@gmail.com) Roteiro Definição Documento de arquitetura Modelos de representação da arquitetura Estilos arquiteturais Arquitetura de sistemas web Arquitetura

Leia mais

Caracterização de Sistemas Distribuídos

Caracterização de Sistemas Distribuídos Aula 1 Caracterização de Sistemas Distribuídos Prof. Dr. João Bosco M. Sobral mail: bosco@inf.ufsc.br - página: http://www.inf.ufsc.br/~bosco Rodrigo Campiolo mail: rcampiol@inf.ufsc.br - página: http://ww.inf.ufsc.br/~rcampiol

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Questões Em uma rede de sobreposição (overlay), mensagens são roteadas de acordo com a topologia da sobreposição. Qual uma importante desvantagem

Leia mais

CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM

CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM Rogério Schueroff Vandresen¹, Willian Barbosa Magalhães¹ ¹Universidade Paranaense(UNIPAR) Paranavaí-PR-Brasil rogeriovandresen@gmail.com, wmagalhaes@unipar.br

Leia mais

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com Sistemas Operacionais 2014 Introdução Alexandre Augusto Giron alexandre.a.giron@gmail.com Roteiro Sistemas Operacionais Histórico Estrutura de SO Principais Funções do SO Interrupções Chamadas de Sistema

Leia mais

Redes de Computadores. Ricardo José Cabeça de Souza www.ricardojcsouza.com.br ricardo.souza@ifpa.edu.br

Redes de Computadores. Ricardo José Cabeça de Souza www.ricardojcsouza.com.br ricardo.souza@ifpa.edu.br Redes de Computadores Ricardo José Cabeça de Souza www.ricardojcsouza.com.br www.ricardojcsouza.com.br CAMADA DE APLICAÇÃO Desempenha funções específicas de utilização dos sistemas Identificação de parceiros

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 2 Computação em Nuvem Desafios e Oportunidades A Computação em Nuvem

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Estilos Arquitetônicos e Arquitetura Cliente/Servidor

Sistemas Distribuídos: Conceitos e Projeto Estilos Arquitetônicos e Arquitetura Cliente/Servidor Sistemas Distribuídos: Conceitos e Projeto Estilos Arquitetônicos e Arquitetura Cliente/Servidor Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática /

Leia mais

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br Sistemas Distribuídos Introdução Edeyson Andrade Gomes www.edeyson.com.br SUMÁRIO Definições Características Desafios Vantagens Desvantagens 2 Definições DEFINIÇÕES Um sistema distribuído é uma coleção

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 1 Conceitos da Computação em Nuvem A computação em nuvem ou cloud computing

Leia mais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com Projeto de Sistemas Distribuídos Prof. Andrêza Leite andreza.lba@gmail.com Exemplos de SD Quais podem ser? Ex. de SD: Internet Internet é um conjunto de redes de computadores, de muitos tipos diferentes,

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Camada de Aplicação Slide 1 Aplicação e Protocolo de Aplicação Aplicação: processos distribuídos em comunicação rodam nos computadores usuários da rede como programas de usuário trocam

Leia mais

Compartilhamento de Dados e Recursos Computacionais de Armazenamento em Redes P2P Sociais

Compartilhamento de Dados e Recursos Computacionais de Armazenamento em Redes P2P Sociais Compartilhamento de Dados e Recursos Computacionais de Armazenamento em Redes P2P Sociais Fabrício Barros Gonçalves, Carlo Oliveira, Vanessa Braganholo Programa de Pós-Graduação em Informática (PPGI) Universidade

Leia mais

Redes Peer-to-Peer. Ana Flávia Godoi e Paulo Nei. Sistemas Distribuídos Mestrado UFPR. Roteiro. Motivação. Histórico

Redes Peer-to-Peer. Ana Flávia Godoi e Paulo Nei. Sistemas Distribuídos Mestrado UFPR. Roteiro. Motivação. Histórico Roteiro Peer-to-Peer Motivação, Histórico e Definição Classificação de Aplicações Topologia das redes Caracteristicas não funcionais O framework JXTA Virtualização das Redes ID S, Credentials, Advertisements

Leia mais

Sistemas Distribuídos. Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br

Sistemas Distribuídos. Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Agosto/2003 Tópicos Conceitos de HW em SD Multiprocessadores e Multicomputadores Conceitos de SW

Leia mais

DISTRIBUTED SYSTEMS ARCHITECTURES. Ian Sommerville, 8º edição Capítulo 12 Aula de Luiz Eduardo Guarino de Vasconcelos

DISTRIBUTED SYSTEMS ARCHITECTURES. Ian Sommerville, 8º edição Capítulo 12 Aula de Luiz Eduardo Guarino de Vasconcelos DISTRIBUTED SYSTEMS ARCHITECTURES Ian Sommerville, 8º edição Capítulo 12 Aula de Luiz Eduardo Guarino de Vasconcelos Objetivos Explicar as vantagens e desvantagens das arquiteturas de sistemas distribuídos

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) São Paulo, 2011 Universidade Paulista (UNIP) Service Oriented Architecture (SOA) Prof. MSc. Vladimir Camelo vladimir.professor@gmail.com 04/09/11 vladimir.professor@gmail.com 1 04/09/11 vladimir.professor@gmail.com

Leia mais

Arquitetura Orientada a Serviço

Arquitetura Orientada a Serviço Arquitetura Orientada a Fabio Perez Marzullo IEEE Body of Knowledge on Services Computing Sponsored by Technical Committee on Services Computing, IEEE Computer Society 1 SOA e Web Services SOA é um modelo

Leia mais

REST Um Estilo de Arquitetura de Sistemas Distribuídos

REST Um Estilo de Arquitetura de Sistemas Distribuídos REST Um Estilo de Arquitetura de Sistemas Distribuídos Márcio Alves de Araújo¹, Mauro Antônio Correia Júnior¹ 1 Faculdade de Computação Universidade Federal de Uberlândia (UFU) Monte Carmelo MG Brasil

Leia mais

Sistemas distribuídos:comunicação

Sistemas distribuídos:comunicação M. G. Santos marcela@estacio.edu.br Faculdade Câmara Cascudo - Estácio de Sá 16 de abril de 2010 Formas de comunicação Produtor-consumidor: comunicação uni-direccional, com o produtor entregando ao consumidor.

Leia mais

3 Arquitetura do Sistema

3 Arquitetura do Sistema 3 Arquitetura do Sistema Este capítulo irá descrever a arquitetura geral do sistema, justificando as decisões de implementação tomadas. Na primeira seção iremos considerar um conjunto de nós interagindo

Leia mais

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science (Tradução e Adaptação Ricardo Anido - IC/Unicamp) Capítulo 04: Comunicação Versão: 20 de março de 2014

Leia mais

Cloud Computing. Andrêza Leite. andreza.lba@gmail.com

Cloud Computing. Andrêza Leite. andreza.lba@gmail.com Cloud Computing Andrêza Leite andreza.lba@gmail.com Roteiro O que é cloud computing? Classificação O que está 'por traz' da cloud? Exemplos Como montar a sua? O que é cloud computing? Cloud Computing O

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

GroupUsto.re: Federação de Dados Usando a Plataforma Peer-to-peer

GroupUsto.re: Federação de Dados Usando a Plataforma Peer-to-peer Anais 129 GroupUsto.re: Federação de Dados Usando a Plataforma Peer-to-peer Wilton Oliveira Ferreira 1,2,3, Rodrigo Elia Assad 1,2, Anderson Fonseca e Silva 1,2, Silvio Romero de Lemos Meira 1, Josino

Leia mais

Jan Tarik Martins Nazorek DESENVOLVIMENTO DE UM SOFTWARE DE BACKUP DESCENTRALIZADO, UTILIZANDO A PLATAFORMA JXTA

Jan Tarik Martins Nazorek DESENVOLVIMENTO DE UM SOFTWARE DE BACKUP DESCENTRALIZADO, UTILIZANDO A PLATAFORMA JXTA Jan Tarik Martins Nazorek DESENVOLVIMENTO DE UM SOFTWARE DE BACKUP DESCENTRALIZADO, UTILIZANDO A PLATAFORMA JXTA Palmas 2013 Jan Tarik Martins Nazorek DESENVOLVIMENTO DE UM SOFTWARE DE BACKUP DESCENTRALIZADO,

Leia mais

SISTEMA DISTRIBUÍDO DE MONITORAMENTO/DETERMINAÇÃO DE SERVIÇOS E RECURSOS DIPONÍVEIS DE UM AMBIENTE DE GRID COMPUTACIONAL

SISTEMA DISTRIBUÍDO DE MONITORAMENTO/DETERMINAÇÃO DE SERVIÇOS E RECURSOS DIPONÍVEIS DE UM AMBIENTE DE GRID COMPUTACIONAL SISTEMA DISTRIBUÍDO DE MONITORAMENTO/DETERMINAÇÃO DE SERVIÇOS E RECURSOS DIPONÍVEIS DE UM AMBIENTE DE GRID COMPUTACIONAL Thais Cabral de Mello, Bruno Schulze, Luis Rodrigo de Oliveira Gonçalves 1 Laboratório

Leia mais

MCITP: ENTERPRISE ADMINISTRATOR

MCITP: ENTERPRISE ADMINISTRATOR 6292: INSTALAÇÃO E CONFIGURAÇÃO DO WINDOWS 7, CLIENT Objetivo: Este curso proporciona aos alunos o conhecimento e as habilidades necessárias para instalar e configurar estações de trabalho utilizando a

Leia mais

2 Trabalhos Relacionados

2 Trabalhos Relacionados 2 Trabalhos Relacionados Nesse capítulo, apresentamos os trabalhos relacionados ao GridFS, entrando em mais detalhes sobre os sistemas citados durante a introdução e realizando algumas considerações sobre

Leia mais

Sistemas Cliente-Servidor

Sistemas Cliente-Servidor Sistemas Cliente-Servidor Disciplina Bancos de Dados II (INE 5616 2006-1) Curso de Sistemas de Informação Prof. Renato Fileto INE/CTC/UFSC 1 1 Cliente - Servidor Arquitetura cliente/servidor: Os servidores

Leia mais

UM ESTUDO SOBRE TIPOS DE ALGORITMOS DE DISPATCHER PARA WEB CLUSTERS

UM ESTUDO SOBRE TIPOS DE ALGORITMOS DE DISPATCHER PARA WEB CLUSTERS REVISTA CIENTÍFICA ELETRÔNICA DE SISTEMAS DE INFORMAÇÃO - ISSN 1807-1872 P UBLICAÇÃO C IENTÍFICA DA F ACULDADE DE C IÊNCIAS J URÍDICAS E G ERENCIAIS DE G ARÇA/FAEG A NO II, NÚMERO, 04, FEVEREIRO DE 2006.

Leia mais