4

我有 2 个 JVM 正在运行,我正在从第一个复制很多对象到第二个,但不是一次全部复制。对象图有很多交叉点,所以如果有一种方法可以只发送对象图的缺失部分,那就太好了。我知道我曾经偶然发现了一个为此而设计的框架,但我不记得这个名字了。你会推荐什么?

4

4 回答 4

3

不确定是否有专门用于此目的的自定义框架,但您有几个其他选项可以将 Java 对象从一个 JVM 传输到另一个。他们之中有一些是:

  1. 协议缓冲区

  2. 管理系统

  3. 基于简单套接字的客户端/服务器 Java

  4. 节约

于 2012-05-04T08:51:25.553 回答
3

您需要设法检测上次发送的数据集的更改并发送指令或如何将复制的数据更改为相同。

一个简单的方法是记录原始文件发生的每一个变化(使用支持这个的接口)

您可以将相同的更改推送到第二个实例并“重放”它们以获得相同的结果。

于 2012-05-04T08:23:36.993 回答
0

你可以试试kryonet。它是一个简单但高效的 Java TCP 和 UDP 客户端/服务器库。

https://code.google.com/p/kryonet/

于 2014-02-24T08:38:27.870 回答
0

您可以使用 Java 远程方法调用 (RMI)。它提供远程调用和将可序列化对象传输到另一台机器。当然,您需要一些代码来比较对象图,这可以通过计算对象图某些部分的一种哈希并调用远程对象来比较远程图与该哈希来完成。

于 2012-05-04T08:32:49.197 回答