我正在为我创建的Java应用程序开发GUI。我想将GUI与客户端的其他部分保持在一个单独的进程中。这背后的理由是:
我现在的问题是:我应该使用什么技术来将客户端的界面暴露给GUI? RMI首先浮现在脑海中。但是,这具有将API限制为仅Java的缺点。我也不确定RMI适合大规模部署的程度(例如,它如何处理本地防火墙?)。但是,我现在还不想排除它。
我还应该提到我也有一些部署要求:
鉴于这些限制,您会使用什么解决方案?
答案 0 :(得分:2)
前段时间我遇到了同样的情况,除了后端是在Python中,而GUI是在java中。
需要考虑的重点:
您可能会发现JSON-RPC很有用:它是远程方法调用单独程序的标准。
总而言之,我很难说出最适合你的方式。我最终避免使用RPC,并为后端提供了一个简单的命令行界面;输出作为JSON对象写入临时文件和STDERR。我觉得这是一个很好的决定,因为它使程序之间的界面非常简单和解耦。