P2P アプリケーションを作成するための Python ライブラリ/フレームワーク [終了]
-
12-09-2019 - |
質問
Python で P2P アプリケーションを作成するためのライブラリまたはフレームワークはありますか?
最初の Bittorrent クライアントが Python で書かれていることは知っています。私は次のように見えます JXTA ただしPythonの場合。
解決
ツイストはかなり真剣にPythonでネットワーク関連のものへの答えですが、あなたは本当に物事のツイスト方法に購入する必要があります。それはイベントループ、コールバックシステムおよびネットワーキング・フレームワークですが、本質的にP2Pスタックではありません。
Divmod頂点が現在維持されている、と私は数年前にそれを使用してみたらまだかなり荒れていたされていません。
あなたが探しているものに最も近いかもしれませんに関連するcspace:「セキュアな、分散型、USER-のためのプラットフォームインターネット上でのユーザ通信。」それはので、あなたのアプリがあること正常に機能しないことができP2PとNATトラバーサルを抽象化する「P2Pアプリ。」
同様に、オーストラリアと呼ばれるのうち、古いP2PシステムがあったセキュアなP2Pメッセージング、チャット、ファイル共有などの機能を持っていたPythonで書かれた数年前に「サークル」、、。 http://savannah.nongnu.org/projects/circle/
また、私のブックマークから:
http://entangled.sourceforge.net/ のもつれで、「分散ハッシュテーブル(DHT) Kademliaの、ならびにピアツーピアタプルスペースの実装に基づく。 "
http://khashmir.sourceforge.net/ には、Python分散ハッシュテーブルは、注目すべきであることネットワークなぜなら(携帯電話ネットワーク上での使用のために、例えば設計された)非常にフォールトトレラントであるAirhookプロトコルを使用します。
http://kenosis.sourceforge.net/ のPythonのP2P RPCシステムである。
他のヒント
私は考えることができる最高のオプションを、当然のことながら、のねじれのに使用することです。
BitTorrentのでの旧バージョンがで構築されましたそれ。リンクは、ツイスト使用して知られているバージョンを最後にあります。あなたは出発点としてそれを学ぶことができます。
バーテックスのもあります。これは、ツイスト使用して、ファイアウォールのバイパスとP2Pを可能にするライブラリです。
この質問は尋ね、その後、私は本当にそれのように、答え ZeroMQ のが浮上している、とされて以来。 Pythonモジュールをpyzmqと呼ばれています。それは同様んが、それは、要求以外のメッセージパターンを扱う場合は特に、道少ない不格好なプロセス構築TCPソケットを作る>応答します。それは、基本的なサーバ、P2Pアプリケーション、メッセージング、分散処理のために素晴らしいことだ、あなたはそれに名前を付けます。
そのようなものが存在するかどうかはわかりませんが、次の代替案を提供できます。
- 使用 ジトン とJXTA
- 使用 Python C-API または スイグ そして JXTA-C
私は2002年12月を持っているの日JXTAページから引用します日付、
「プロジェクトJXTAはdownload.jxta.orgから使用可能なJavaリファレンス実装を持ち、現在はC、Objective Cの、PerlやRubyの、やPythonなど、他の一般的な言語でのリファレンス実装を追加するために取り組んでいる。Java実装ですがJXTAプロトコルの中で最も完全な実装、(Win32とLinuxの両方で利用可能)Cの実装では、高速完全性の同じレベルに近づいている。 "
こんにちは(Javaの2.6&2.7のためのJXTAの2つの最後のリリースのリーダーから)、
はPythonでJXTAの既知の実装はありません。
誰もがこの問題に取り組むしたい場合は、は、まずJXTA 2.0プロトコルについて学ぶ必要があります。 Scribdので読み取るための実用的なJXTA II帳オンラインは技術を理解することに役立つはずです。
応援!
StacklessのPythonののはあなたに興味があるかもしれません。