我需要从我的应用程序中管理一组代理。所有代理都是用Java编写的,但代理需要在它们自己的JVM中运行。我编写了一个概念验证,启动子进程并使用stdout/stdin发送命令和保持活动信息。我还打开了一个套接字连接以进行数据传输。
我猜测一些连接池库应该能够帮助管理代理。
那么代理和主进程之间的通信呢?使用TCP和XML消息(JAXB)不如我所希望的那样可靠或方便。是否有更好的库可以协助解决这个问题?
我很可能可以自己编写所需内容,但我相信其他人已经做得更好了。
我需要从我的应用程序中管理一组代理。所有代理都是用Java编写的,但代理需要在它们自己的JVM中运行。我编写了一个概念验证,启动子进程并使用stdout/stdin发送命令和保持活动信息。我还打开了一个套接字连接以进行数据传输。
我猜测一些连接池库应该能够帮助管理代理。
那么代理和主进程之间的通信呢?使用TCP和XML消息(JAXB)不如我所希望的那样可靠或方便。是否有更好的库可以协助解决这个问题?
我很可能可以自己编写所需内容,但我相信其他人已经做得更好了。
对于消息传递,您可以尝试使用ZeroMQ这样的工具,它是一种消息传递工具,并且具有用于进程间通信的本地传输功能,然后您只需在进程之间序列化对象即可。
另一种选择是回到传统的RMI,可能是最简单的方法。
当我开发这个项目时,实际上我找到了两种非常有用的方法:
实际上,我开始使用vert.x来处理基于websocket的通信,并意识到它本身正在使用hazelcast。