tnk*_*eka 63 java ipc concurrent-programming
我有以下情况:
我java
在本地计算机上运行了2个JVM进程(实际上有2个进程单独运行,而不是2个线程).我们称他们ProcessA
为ProcessB
.
我希望他们彼此沟通(交换数据)(例如ProcessA
发送消息来ProcessB
做某事).
现在,我通过编写临时文件解决此问题,这些进程会定期扫描此文件以获取消息.我认为这个解决方案并不是那么好.
什么是实现我想要的更好的选择?
hay*_*lem 83
IPC的多种选择:
没有更多细节,基于网络的裸机IPC方法似乎是最好的,因为它是:
话虽如此,根据您的示例(只是请求其他进程执行操作),JMX对您来说也足够好了.
Mik*_*elJ 19
我在github上添加了一个名为Mappedbus的库(http://github.com/caplogic/mappedbus),它允许两个(或更多)Java进程/ JVM通过交换消息进行通信.该库使用内存映射文件,并使用fetch-and-add和volatile读/写来同步不同的读取器和写入器.我已经使用这个库测量了两个进程之间的吞吐量到4000万条消息/秒,读取/写入单个消息的平均延迟为25纳秒.
你在寻找什么inter-process communication
.Java以Java RMI API的形式提供了一个简单的IPC框架.进程间通信还有其他几种机制,例如管道,套接字,消息队列(显然,这些都是概念,因此存在实现这些的框架).
我认为在您的情况下,Java RMI或简单的自定义套接字实现应该足够了.
归档时间: |
|
查看次数: |
40114 次 |
最近记录: |