web-dev-qa-db-ja.com

Javaでのピアツーピアアプリケーションの開発

Javaファイル共有のためにピアツーピアシステムを開発する必要がある大学のプロジェクトを持っています。

したがって、本質的には、複数のユーザーがピアツーピアシステムを使用してファイルを共有できるはずです。

誰かがこのシステムを構築する方法についていくつかのガイドラインを教えてもらえますか?

19
Noor

大学のプロジェクトについては、ソケットに関するチュートリアルを読んでください。これはあなたの教授があなたに期待していることだと思います。次の例を見てください: http://www.Oracle.com/technetwork/Java/socket-140484.html

2つの一般的な解決策があります。サーバーフルとサーバーレスです。サーバーベースのソリューションの場合、すべてのクライアントはサーバーのIPアドレスで事前設定する必要があります。サーバーはサーバーソケットを開き、待機を開始します。したがって、各クライアントはサーバーに接続して登録します。登録は非常に簡単です。サーバーはクライアントのIPを必要とするだけです。これで、サーバーは接続されているクライアントのリストを保持し、そのリストを各クライアントに送信します。 peer2peerアプリを作成するには、各クライアントもサーバーソケットを開きます。クライアントAがクライアントBに接続することを望むとき、それは単にそのソケットに接続します。

サーバーレスソリューションを実装できます。この場合、たとえばブロードキャストに基づくいくつかの検出メカニズムが必要です。

これがお役に立てば幸いです。幸運を。

18
AlexR

JXTAを確認したい。サイトは jxse.kenai.com に移動しました。実用的なJXTA IIの本がScribdで読めるようになりました。

4