2011-04-27 73 views
0

我有这取决于崩溃随机本机库的Java程序(并因此拉低了整个JVM)。 这个库是关于I/O的,因此可以使用第二个JVM轻松地从程序的其余部分中分离出来。 我想将程序拆分为两部分,以便主程序可以继续运行,但本机库可以在崩溃后重新启动。问题是:让这两个JVM进行通信的最佳方式是什么?其中一个会崩溃并重新启动,但这不应该影响其他JVM(除了由于崩溃和重新启动导致的I/O超时)之外。 RMI防撞?我应该使用套接字吗?内存映射文件?崩溃性的Java IPC

+0

你不能修复崩溃的代码? – 2011-04-27 07:31:18

+0

你没有提到JMX – Yaneeve 2011-04-27 07:35:24

+0

@Jarrod简短的回答:没有。 – michelemarcon 2011-04-27 07:46:06

回答

0

我会用一个持久JMS队列过程之间。这将是最能防止碰撞的。 (修复库是最好的选择)

+1

修复崩溃的本地库的另一种方法是抛弃它并用纯Java重写它。 – 2011-04-27 07:38:05

+0

@Stephen不幸的是,这不是一个选项。 – michelemarcon 2011-04-27 07:46:59