我需要從我的應用程序管理代理池。所有這些都是用Java編寫的,但代理需要在他們自己的JVM中運行。我寫了一個啓動子進程的概念證明,並使用stdout/stdin發送命令和保持活動信息。我還打開一個用於數據傳輸的套接字連接。管理JVM代理池和通信
我想有些連接池庫應該能夠幫助管理代理。
代理商與主流程之間的溝通如何?使用帶有XML消息的TCP(JAXB)並不像我想的那樣可靠或方便。任何建議更好的圖書館在這裏協助?
我可以很好地寫出自己需要的東西,但我確信其他人已經做得更好了。
我需要從我的應用程序管理代理池。所有這些都是用Java編寫的,但代理需要在他們自己的JVM中運行。我寫了一個啓動子進程的概念證明,並使用stdout/stdin發送命令和保持活動信息。我還打開一個用於數據傳輸的套接字連接。管理JVM代理池和通信
我想有些連接池庫應該能夠幫助管理代理。
代理商與主流程之間的溝通如何?使用帶有XML消息的TCP(JAXB)並不像我想的那樣可靠或方便。任何建議更好的圖書館在這裏協助?
我可以很好地寫出自己需要的東西,但我確信其他人已經做得更好了。
對於消息可以嘗試像ZeroMQ,它是一個通訊工具和具有本地傳輸進程之間communicationg ,那麼你可以在進程之間序列化對象。
另一種方法是回到傳統的rmi,可能是最簡單的。
其實我已經發現了兩個辦法,將有很大的幫助,當我開發了這個:
實際上,我已經開始使用vert.x來處理基於websocket的通信,並意識到它本身使用了hazelcast。
此外,根據環境(在許多企業環境中已經設置),通用的JMS或Tibco RV可能是一個選項。 – ddimitrov 2010-08-04 15:00:49
我接受zeromq作爲答案,即使我無法使用它(我需要一個完整的java堆棧來實現可移植性)。事實上,ZeroMQ真的很酷。我仍然必須實現我自己的序列化機制...... – 2012-06-12 09:52:26