更好的 Java IPC@Linux 策略:(a) /dev/shm 上的 java.nio 文件 API 或 (b) JNI 到 shmctl(2)?
Posted
技术标签:
【中文标题】更好的 Java IPC@Linux 策略:(a) /dev/shm 上的 java.nio 文件 API 或 (b) JNI 到 shmctl(2)?【英文标题】:better Java IPC@Linux tactic: (a) java.nio File API on /dev/shm or (b) JNI to shmctl(2)? 【发布时间】:2013-05-04 22:01:53 【问题描述】:我们想要编写一个 Java 7 程序,它将作为两个独立的 JVM 进程实例启动(通过 2 个 cmd 行调用)。我们希望这两个进程使用本地 Linux 内核共享内存 IPC 资源相互通信。
有没有人知道这两种方法中哪一种更有价值?
-
在 /dev/shm 上使用 java.nio.* API
使用 JNI 桥接 C++ 代码,进行本机 shmctl() 系统调用
?
【问题讨论】:
【参考方案1】:我投票给“NIO 和 /dev/shm”。
但在做出任何最终决定之前,您还应该考虑其他选项,包括 CLIP:
http://ambientideas.com/blog/index.php/tag/java/page/2/
http://ltsllc.com/talks/20090407_ipc.pdf
inter jvm communication
套接字、消息队列和命名管道是其他 IPC 方法,我不一定会立即放弃。恕我直言...
【讨论】:
以上是关于更好的 Java IPC@Linux 策略:(a) /dev/shm 上的 java.nio 文件 API 或 (b) JNI 到 shmctl(2)?的主要内容,如果未能解决你的问题,请参考以下文章