Framework Peer-to-Peer Menu de navegaçãoadicioneGooglenotíciaslivrosacadêmicoeexpandindo-oe

Redes de computadoresP2P


Peer-to-PeerPastryJXTAframeworkJ2EEJavacomputação distribuídaMVCinterface gráficaXMLpersistência de objetospadrões de projetoXNapOogDuke UniversityLancaster´s P2P FrameworkUniversity of LancasterCOPPEERUFRJJXTA








Question book.svg

Esta página ou secção não cita fontes confiáveis e independentes, o que compromete sua credibilidade (desde Março de 2014). Por favor, adicione referências e insira-as corretamente no texto ou no rodapé. Conteúdo sem fontes poderá ser removido.
Encontre fontes: Google (notícias, livros e acadêmico)

Mesmo dispondo de plataformas de comunicação Peer-to-Peer, como o Pastry e o JXTA, os desenvolvedores ainda precisam projetar suas aplicações considerando requisitos não-funcionais, tais como validação do usuário, operações de manutenção da rede Peer-to-Peer (criar grupo, localizar grupo, ingresso em grupo, localizar peer, localizar recursos), desenvolvimento baseado em componentes (locais ou remotos), interface gráfica com o usuário, entre outros. Portanto, tais funcionalidades precisam estar disponíveis, sobre a plataforma de rede Peer-to-Peer, de maneira reutilizável e adaptável. Este modelo de desenvolvimento é conhecido como framework de aplicações.


No entanto, para sistemas Peer-to-Peer, ainda não existe um modelo de desenvolvimento elaborado e consolidado, análogo aos frameworks para sistemas Cliente/Servidor. O J2EE, baseado em Java, é um bom exemplo. Seu modelo é tão elaborado que ultrapassa os domínios da computação distribuída, abrangendo também frameworks MVC, componentes de interface gráfica com o usuário, manipulação de documentos XML, mecanismos de persistência de objetos, entre outros.


Assim, diversas pesquisas estão em curso para o desenvolvimento de um "Peer-to-Peer Application Framework" sobre alguma plataforma de comunicação Peer-to-Peer. Sua definição deve compreender uma descrição conceitual e um conjunto de mecanismos de suporte que orientam como aplicações semelhantes podem ser arquitetadas e implementadas. Usualmente, um framework deste tipo incluiria: uma proposta de arquitetura básica, padrões de projeto, entre outros recursos para desenvolvimento. Entre os benefícios advindos da disponibilização de um framework, podemos citar:


  • Definição de conceitos e padrões de projeto para um mesmo domínio (de aplicação ou de tecnologia);

  • Atendimento de requisitos não-funcionais, permitindo que o desenvolvedor se dedicar mais aos requisitos funcionais do modelo de negócio;

  • Viabilização da interoperabilidade e do reuso de componentes desenvolvidos por fornecedores distintos;

  • Agilidade no desenvolvimento.

Entre diferenças notáveis de domínio tecnológico a serem consideradas no desenvolvimento de um framework para aplicações Cliente/Servidor e um similar para aplicações Peer-to-Peer [Roussopoulos 2004], podemos destacar:


  • Ausência de controle central dos computadores participantes da computação distribuída, parcial ou total, bem como dos processos e recursos localizados nos mesmos;

  • Imprevisibilidade dos computadores participantes, tanto em número de participantes quanto em disponibilidade na rede;

  • Alta latência, alta variância da latência (jitter) e não-confiabilidade da comunicação entre os computadores participantes;

  • Heterogeneidade de plataformas e do poder computacional dos nós participantes.

Exemplos de frameworks para desenvolvimento de aplicações Peer-to-Peer são o XNap, o Oog (Duke University), o Lancaster´s P2P Framework (University of Lancaster) e o COPPEER (UFRJ), sendo os dois últimos abstrações construídas sobre a plataforma JXTA.



















  • Portal das tecnologias de informação


Ícone de esboço
Este artigo sobre redes de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.

Popular posts from this blog

Are there any AGPL-style licences that require source code modifications to be public? Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Force derivative works to be publicAre there any GPL like licenses for Apple App Store?Do you violate the GPL if you provide source code that cannot be compiled?GPL - is it distribution to use libraries in an appliance loaned to customers?Distributing App for free which uses GPL'ed codeModifications of server software under GPL, with web/CLI interfaceDoes using an AGPLv3-licensed library prevent me from dual-licensing my own source code?Can I publish only select code under GPLv3 from a private project?Is there published precedent regarding the scope of covered work that uses AGPL software?If MIT licensed code links to GPL licensed code what should be the license of the resulting binary program?If I use a public API endpoint that has its source code licensed under AGPL in my app, do I need to disclose my source?

2013 GY136 Descoberta | Órbita | Referências Menu de navegação«List Of Centaurs and Scattered-Disk Objects»«List of Known Trans-Neptunian Objects»

Button changing it's text & action. Good or terrible? The 2019 Stack Overflow Developer Survey Results Are Inchanging text on user mouseoverShould certain functions be “hard to find” for powerusers to discover?Custom liking function - do I need user login?Using different checkbox style for different checkbox behaviorBest Practices: Save and Exit in Software UIInteraction with remote validated formMore efficient UI to progress the user through a complicated process?Designing a popup notice for a gameShould bulk-editing functions be hidden until a table row is selected, or is there a better solution?Is it bad practice to disable (replace) the context menu?