Pregunta

¿Hay alguna biblioteca o marco para la creación de aplicaciones P2P en Python?

Sé que el cliente Bittorrent inicial fue escrito en Python. Busco algo así como JXTA pero para Python.

¿Fue útil?

Solución

Twisted es más o menos la respuesta a nada en serio relacionados con la red en Python, pero que realmente tiene que comprar en la forma torcida de hacer las cosas. No es intrínsecamente una pila P2P, es un marco de bucle de eventos, el sistema de devolución de llamada y conexión en red.

DIVMOD Vertex no se mantiene en la actualidad, y todavía era bastante peligroso cuando traté de usarlo hace unos años.

CSpace podría ser el más cercano a lo que estás buscando: "una plataforma para la compra segura, descentralizada, el usuario la comunicación a usuario en internet ". Se abstrae P2P y NAT a cabo por lo que su aplicación puede actuar normalmente y no sea "una aplicación P2P."

Del mismo modo, había un viejo sistema P2P de Australia llamado "The Circle" hace unos años, escrito completamente en Python, que tenía mensajería segura P2P, chat, intercambio de archivos y otras características. 0.41c fue la última versión: http://savannah.nongnu.org/projects/circle/

Además de mis favoritos:

http://entangled.sourceforge.net/ se enreda, "una tabla de dispersión distribuida (DHT) basado en Kademlia, así como un espacio de tuplas aplicación peer-to-peer ".

http://khashmir.sourceforge.net/ es una tabla de dispersión distribuida Python, notable porque las redes utilizando el protocolo Airhook, que es muy tolerante a fallos (diseñado para su uso por ejemplo, en las redes celulares).

http://kenosis.sourceforge.net/ es un sistema Python P2P RPC.

Otros consejos

La mejor opción que se me ocurre, por supuesto, es el uso de torcido .

vieja versión de BitTorrent fue construido con eso. El enlace es a la última versión conocida que utiliza trenzado. Se puede estudiar como punto de partida.

También hay Vertex . Se trata de una biblioteca que utiliza trenzado y permite P2P con derivación servidor de seguridad.

Dado que esta pregunta fue hecha y posteriormente respondió: ZeroMQ ha surgido, y me gusta mucho. El módulo de Python se llama pyzmq. Esto hace que el proceso de construcción de sockets TCP manera menos torpe, especialmente cuando se trata de patrones de mensajes que no sean de solicitud> Respond, aunque lo hace tan bien. Es muy bueno para servidores básicos, aplicaciones P2P, mensajería, procesamiento distribuido, lo que sea.

No sé si existe tal cosa, aunque puedo ofrecer las siguientes alternativas:

las páginas Sun JXTA que tienen un diciembre con de 2002 fecha,

"Proyecto JXTA tiene una implementación de referencia de Java disponible de download.jxta.org, y actualmente está trabajando para añadir implementaciones de referencia en otros idiomas comunes, incluyendo C, Objective C, Perl, Ruby y Python. Aunque la aplicación Java es la implementación más completa de los protocolos JXTA, la implementación en C (disponible tanto para Win32 y Linux) se acerca rápidamente el mismo nivel de integridad ".

Hola (del líder de las dos últimas versiones de JXTA para Java 2.6 y 2.7),

No hay ninguna aplicación conocida de JXTA en Python.

Si alguien quiere hacer frente a este problema, uno debe aprender sobre el JXTA 2.0 protocolos primero. La práctica JXTA II libro disponible en línea para la lectura en Scribd debería ayudar a la comprensión de la tecnología.

Ánimo!

Stackless Python podría ser de interés para usted.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top