我想一直运行一个Java程序和一个Ruby程序,如果需要,我希望彼此之间进行通信,而不需要一个程序在每次需要时调用另一个程序(比如JRuby做得很远)我能算出来的。)
我需要类似HTTP请求或类似的东西,我可以使用Ruby脚本传递的参数调用Java程序中的方法。
具体方案如下:我的服务器上运行了Siri-Proxy。当我的插件识别出一些指定的命令时,它必须与一些用Java编写的中间件进行通信(需要传递给中间件的是房间,要处理的元素和要执行的操作)。
这样,中间件就能够处理请求,并且可以采取模块化措施,例如将params写入数据库或与某些家庭控制软件交互。
答案 0 :(得分:3)
我不确定,你究竟要求的是什么,但Inter-process communication(IPC)是 - already stated - 一个非常广泛的领域。
可能的解决方案包括简单的写入/从共享文件读取,通过套接字和嵌入式Web服务器到消息队列中间件。根据您的情况,处理通信的单独AMQP或Redis服务器可能过度。另一方面,如果不仔细地进行文件交换,则非常容易出错。
你也可以在你的Ruby程序中easily实现一个HTTP服务器,Java应用程序提交请求以建立单向通信。
如果您需要更精确的答案,请同时提供更多信息。你的目标是什么完全?性能是一个问题吗?它应该仅用于测试目的吗?您想传输哪种数据?