我開發了一個簡單的文件共享應用程序在java中使用TCP套接字。現在,問題是我如何使這個應用程序的P2P?分佈式哈希表(DHT)可以做到這一點,或者我可以在我的應用程序中實現其他選項以使其成爲P2P?我一直試圖在這個問題上得到很長時間的想法,但我只是變得更加困惑。請幫忙。P2P文件共享應用程序
回答
Forest platform這是在早期的發展是針對像你的應用程序。你可能想看看它。
唯一的問題是,它仍在開發中,並且尚未可用。我建議你留意它,並嘗試在它首次發佈時使用它。
編輯回答評論你的問題下:
您的應用程序將需要連接的一些同行。根據你選擇他們的方式(隨機的人或知道聯繫人),你分別使用一個對等('p2p')網絡或一個朋友對朋友('f2f')網絡。
森林正在爲應用程序提供一個f2f網絡,但應用程序可以自由地在該網絡頂部路由消息以實現(匿名)p2p。
對於傳統的p2p網絡,您需要連接一個DHT,並且您需要通過參與DHT的(或某些)服務器引導它。
一般來說,p2p應用程序並不是那麼簡單,你需要在這裏和那裏處理更多的細節。如果你真的想試驗它們,你可以去檢查現有的DHT庫,看看它們是如何工作的。您可能首先想要閱讀關於Wikipedia about Kademlia的文章,它是最常用的DHT算法的基礎。
非常感謝。我一定會密切關注它。 – philanthropist 2012-04-01 12:06:03
如何使用Forest Platform? 是否有任何模板代碼或文檔? – 2017-04-30 11:16:59
森林平臺是一個死亡項目(由我製作)。忘掉它。 – Vincent 2017-05-01 03:56:40
根據你的描述,聽起來你已經創建了一個簡單的P2P應用程序。如果您正在尋找下一步,我會設置一個DHT服務器(bamboo)。接下來,修改您的原始應用程序以從DHT獲取可用文件的列表,而不是直接連接到其他節點以獲取文件列表。
我在java中開發了一個簡單的P2P文件共享應用程序,但我覺得很難。如果你用java編寫它。您可以搜索Vuze或jBittorrent,這可能會幫助您更快地開發它。
- 1. P2p使用IPhone共享應用程序?
- 2. P2P照片共享應用程序
- 3. c#p2p庫共享像p2p程序那樣的文件嗎?
- 4. 從iPhone應用程序共享文件
- 5. 如何爲Android P2P屏幕共享創建應用程序?
- 6. 文件排序策略,P2P文件共享系統
- 7. 在iOS應用程序中共享Sqlite與iTune文件共享。
- 8. 瀏覽在iTunes文件共享中共享的應用程序文件夾
- 9. 在java web應用程序中共享公共文本文件
- 10. 應用程序共享
- 11. android共享應用程序
- 12. Google文檔共享應用程序
- 13. 共享應用程序組件
- 14. 編程P2P應用程序
- 15. 在網絡共享上創建文件夾在asp.net應用程序中共享
- 16. iOS在主應用程序和共享分機之間共享.h文件
- 17. 如何通過消息共享應用程序共享應用程序鏈接
- 18. 如何利用網絡在Android平臺上共享p2p文件?
- 19. 如何在沒有主服務器的情況下編寫用於p2p文件共享的web應用程序?
- 20. Android應用程序在共享文件時在舊應用程序中打開
- 21. Android p2p GPS應用程序
- 22. java文件共享應用程序,用戶登錄
- 23. 共享音頻文件只適用於一些應用程序
- 24. 我的文件共享應用程序並不適用於firebase
- 25. 如何爲我的應用程序啓用文件共享?
- 26. 使用多個應用程序共享Specflow功能文件
- 27. 應用程序因拒絕啓用非法文件共享
- 28. 通過iTunes文件共享在應用程序上共享多個文件(代碼顯示1個文件)
- 29. 遠程應用程序共享工具
- 30. Android之間共享應用程序之間的文件
請您介紹一下您已經實施的部分,那麼我們可以更好地解釋缺失的部分嗎? – Vincent 2012-04-01 04:12:41
我已經創建了一個使用TCP套接字的客戶端和服務器。但是,我已經在單個應用程序中編寫了客戶端和服務器。現在我的應用程序可以做的是連接到服務器,搜索文件夾中的文件(我的應用程序創建一個文件夾,客戶端可以在其中查找他們想要的文件),如果找到任何匹配項,文件將傳輸到客戶端。現在我的應用程序的性質基本上是客戶端/服務器,我不知道如何使它成爲P2P。所以,我的問題是,DHT可以讓我的應用程序是P2P還是還有其他措施可以實現? 謝謝。 – philanthropist 2012-04-01 12:07:14
我編輯了我的答案以反映您的評論。 – Vincent 2012-04-01 17:06:00