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

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

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

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

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

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

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

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

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 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

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

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

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

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

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

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

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

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

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

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

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

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. 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Arquitetura de Software e Atributos de Qualidade

Arquitetura de Software e Atributos de Qualidade Arquitetura de Software e Atributos de Qualidade Jair C Leite Requisitos e atributos de qualidade Requisitos Características, atributos, propriedades e restrições associadas ao software. Requisitos funcionais

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 6 - ALGORÍTIMOS PARALELOS MPI - Parallel Virtual Machine e PVM - Parallel Virtual Machine 1. INTRODUÇÃO Inicialmente é necessário conceber alguns conceitos para entendimento dos algoritmos paralelos:

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

FRAMEWORK P2P PARA PESQUISA DE INFORMAÇÕES

FRAMEWORK P2P PARA PESQUISA DE INFORMAÇÕES UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO FRAMEWORK P2P PARA PESQUISA DE INFORMAÇÕES Área de Sistemas Distribuídos por Rafael Souza

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

CSGrid: um Sistema para Integração de Aplicações em Grades Computacionais

CSGrid: um Sistema para Integração de Aplicações em Grades Computacionais CSGrid: um Sistema para Integração de Aplicações em Grades Computacionais Maria Julia de Lima, Taciana Melcop, Renato Cerqueira, Carlos Cassino, Bruno Silvestre, Marcelo Nery, Cristina Ururahy 1 Grupo

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

Arquitetura e Sistema de Monitoramento para

Arquitetura e Sistema de Monitoramento para Arquitetura e Sistema de Monitoramento para 1 Computação em Nuvem Privada Mestranda: Shirlei A. de Chaves Orientador: Prof. Dr. Carlos Becker Westphall Colaborador: Rafael B. Uriarte Introdução Computação

Leia mais

GVGO Grupo 3. Perguntas & Respostas. Peer-to-Peer & Cloud Computing. Peer to Peer

GVGO Grupo 3. Perguntas & Respostas. Peer-to-Peer & Cloud Computing. Peer to Peer Perguntas & Respostas Peer to Peer GVGO Grupo 3 Peer-to-Peer & Cloud Computing 1. O BitTorrent (rede P2P desestruturada) utiliza um tracker centralizado para cada swarm. Cite três propriedades que as redes

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

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

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

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

For-All - Uma Plataforma para Sistemas Pervasivos Orientados a Serviço

For-All - Uma Plataforma para Sistemas Pervasivos Orientados a Serviço For-All - Uma Plataforma para Sistemas Pervasivos Orientados a Serviço Elenilson Vieira da S. Filho 1, Ângelo L. Vidal de Negreiros 1, Alisson V. Brito 2 1 Departamento de Informática Universidade Federal

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

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

JAVA MESSAGE SERVICE, UMA ALTERNATIVA ENTRE COMUNICAÇÃO DE SISTEMAS: uma abordagem prática. Lucas Yokowo dos Santos 1 RESUMO

JAVA MESSAGE SERVICE, UMA ALTERNATIVA ENTRE COMUNICAÇÃO DE SISTEMAS: uma abordagem prática. Lucas Yokowo dos Santos 1 RESUMO JAVA MESSAGE SERVICE, UMA ALTERNATIVA ENTRE COMUNICAÇÃO DE SISTEMAS: uma abordagem prática Lucas Yokowo dos Santos 1 RESUMO Mesmo com a consolidação de protocolos de comunicação via rede no mercado, como

Leia mais

CAPÍTULO 3 MIDDLEWARE. Para entender-se o aparecimento da tecnologia middleware é descrita a seguir, e, brevemente, a sua evolução.

CAPÍTULO 3 MIDDLEWARE. Para entender-se o aparecimento da tecnologia middleware é descrita a seguir, e, brevemente, a sua evolução. CAPÍTULO 3 MIDDLEWARE Para entender-se o aparecimento da tecnologia middleware é descrita a seguir, e, brevemente, a sua evolução. 3.1 ARQUITETURA CLIENTE/SERVIDOR Primeiramente, surgiu a arquitetura centralizada

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

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

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

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

Sistemas Distribuídos e Paralelos

Sistemas Distribuídos e Paralelos Sistemas Distribuídos e Paralelos Sistemas peer-to-peer Ricardo Mendão Silva Universidade Autónoma de Lisboa r.m.silva@ieee.org December 3, 2014 Ricardo Mendão Silva (UAL) Sistemas Distribuídos e Paralelos

Leia mais

Arquiteturas de Software Problemas e soluções

Arquiteturas de Software Problemas e soluções Arquiteturas de Software Problemas e soluções Marcos Monteiro, MBA, ITIL V3 http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br Cliente - Servidor Cada instância de um cliente pode enviar requisições

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

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

OSGi distribuído: deployment local e execução remota

OSGi distribuído: deployment local e execução remota OSGi distribuído: deployment local e execução remota Marcelo Malcher Monografia de Seminários de Sistemas Distribuídos Departamento de Informática Pontifícia Universidade Católica do Rio de marcelom@inf.puc-rio.br

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

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

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

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

Modelos Arquiteturais

Modelos Arquiteturais Modelos Arquiteturais Carlos Ferraz cagf@cin.ufpe.br Tópicos da Aula Modelos arquiteturais e-servidor Objetos distribuídos 2 O que é um modelo arquitetural? Estrutura em termos de componentes especificados

Leia mais

02.01 Taxinomia das CDNs RDC/ISEL-DEETC-SRT 1

02.01 Taxinomia das CDNs RDC/ISEL-DEETC-SRT 1 02.01 Taxinomia das CDNs RDC/ISEL-DEETC-SRT 1 Taxinomia? Taxinomia = classificação científica; nomenclatura das classificações; O que é necessário para a criação de uma CDN? Como fazer a distribuição e

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

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

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

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

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 3 - ARQUITETURA DE SISTEMAS DISTRIBUÍDOS 1 INTRODUÇÃO Considerando que os Sistemas Distribuídos são constituídos de vários processadores, existem diversas formas de organizar o hardware de tais

Leia mais

Projeto Arquitetural do IEmbedded

Projeto Arquitetural do IEmbedded Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Sistemas e Computação Disciplina: Projeto I Professora: Francilene Garcia Equipe: Carolina Nogueira de

Leia mais

Capítulo 8 Arquitetura de Computadores Paralelos

Capítulo 8 Arquitetura de Computadores Paralelos Capítulo 8 Arquitetura de Computadores Paralelos Necessidade de máquinas com alta capacidade de computação Aumento do clock => alta dissipação de calor Velocidade limitada dos circuitos => velocidade da

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

Metas de um Sistema Distribuído

Metas de um Sistema Distribuído Metas de um Sistema Distribuído Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Arquiteturas Ponto a Ponto

Sistemas Distribuídos: Conceitos e Projeto Arquiteturas Ponto a Ponto Sistemas Distribuídos: Conceitos e Projeto Arquiteturas Ponto a Ponto Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br

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

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

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

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

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

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

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Curso: Sistemas de Informação Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 4 Estilos Arquitetônicos Estilos Arquiteturais Dataflow

Leia mais

Distributed Systems Concepts and Design

Distributed Systems Concepts and Design Distributed Systems, Cap 2, Coulouris Pag. 1 de 1 Distributed Systems Concepts and Design 2 Modelos de Sistemas Modelos de arquitetura de sistemas distribuídos, estão relacionado com o local onde estão

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

Gerenciamento e Interoperabilidade de Redes

Gerenciamento e Interoperabilidade de Redes EN-3610 Gerenciamento e Interoperabilidade de Redes Computação em Nuvem Introdução Centralização do processamento Surgimento da Teleinformática Década de 60 Execução de programas localmente Computadores

Leia mais

ADAPTANDO UMA APLICAÇÃO PARA CLOUD: UMA ANÁLISE ENTRE OS ESFORÇOS UTILIZADOS

ADAPTANDO UMA APLICAÇÃO PARA CLOUD: UMA ANÁLISE ENTRE OS ESFORÇOS UTILIZADOS ADAPTANDO UMA APLICAÇÃO PARA CLOUD: UMA ANÁLISE ENTRE OS ESFORÇOS UTILIZADOS Cleverson Nascimento de Mello¹, Claudete Werner¹, Gabriel Costa Silva² ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil

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

CAPÍTULO 7 O SERVIÇO DOS AGENTES

CAPÍTULO 7 O SERVIÇO DOS AGENTES CAPÍTULO 7 O SERVIÇO DOS AGENTES A inteligência... é a capacidade de criar objetos artificiais, especialmente ferramentas para fazer ferramentas. ( Henri Bergson) O serviço dos agentes surge como uma prestação

Leia mais