2014-03-04 221 views
0

我有以下要求:Java:開始使用套接字和網絡套接字

用戶在網站上發佈併發布任務請求。

有多臺機器(客戶端)運行可以執行任務的已安裝軟件(而非網絡瀏覽器)。

網絡服務器必須問這些客戶端,他們是否願意完成任務。我想讓Web服務器在aws上運行。

這是我迄今瞭解:

客戶端可以是一個Java套接字客戶端。

aws上可以有一個套接字服務器。

Web服務器與套接字服務器進行通信,並要求它與套接字客戶端通信並獲取響應。

其他選項可能會使用websocket,但我需要客戶端是安裝的軟件而不是瀏覽器。在這種情況下是否可以消除服務器套接字的需要?

請建議最佳方法。鏈接到一些教程將是非常有用或至少我知道該怎麼去谷歌。

感謝

回答

0

我會建議使用RMI(遠程方法調用),它是強大的,而且似乎裝了,你所要完成的是什麼:

http://en.wikipedia.org/wiki/Java_remote_method_invocation

我也建議使用LipeRMI,這是一個很好的,易於遵循RMI庫。

這裏是一個很好的鏈接給你它是如何工作的快速的想法和你的代碼是這樣:http://lipermi.sourceforge.net/documentation.php

這將允許您調用服務器上的方法和發送/接收序列化對象。唯一的問題是,如果你需要做文件傳輸之類的東西,這不會起作用,它只能用於Java對象。