【问题标题】:How to communicate between two JVMs using memory-mapped files?如何使用内存映射文件在两个 JVM 之间进行通信?
【发布时间】:2012-11-17 19:44:15
【问题描述】:

我想知道如何在内存映射文件上进行同步,以安全地将其用作两个 JVM 之间的管道。以前有没有人成功地做到过?

【问题讨论】:

  • 这可能有助于描述您的用例,因为这似乎是一个相当不常见的要求。
  • 为什么不直接使用管道让操作系统来处理呢?我强烈怀疑,JVM 间同步本质上是不可移植的。
  • 我认为类似的(如果不重复的话)discussion 以前在这里举行过。

标签: java real-time nio memory-mapped-files


【解决方案1】:

我有一个库可以做到这一点,但它不使用同步。它一次写入内存而不是重用内存,这简化了内存模型。 Java Chronicle

【讨论】:

  • 消费者如何轮询内存映射文件中的新数据?当你最终不得不滚动内存映射文件时,你会怎么做?
  • 消费者轮询或忙等待。我不滚动内存映射文件。我假设有足够的磁盘空间可以使用一天或一周,并且应用程序将重新启动以滚动文件。很少有应用程序每天需要超过几 TB 的数据。
猜你喜欢
  • 1970-01-01
  • 2011-11-06
  • 2021-03-07
  • 1970-01-01
  • 2012-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多