是否可以转储正在运行的JVM的映像,然后通过将映像加载到JVM中来恢复以前的状态?我相当肯定答案是消极的,但是我会喜欢错.
随着JVM可用的所有动态语言增加了交互性,能够保存编码会话将有助于节省手动将VM还原到先前会话的时间.
有一段时间提出了一个JSR 323,但它被拒绝了.您可以在这些文章中找到有关此背后的研究及其需要的一些链接.它主要被拒绝作为一个太不成熟的想法.
我听说至少有一家创业公司(不幸的是不记得这个名字)正在通过虚拟机管理程序(可能是Xen)开发虚拟化技术,这种虚拟机技术已经非常接近能够移动JVM,甚至包括文件系统引用等.和套接字端点.因为他们处于管理程序级别,所以他们可以访问所有这些内容.通过挂钩和JVM,他们拥有大部分内容.我认为他们可能已经失败了.
今天最接近的是Terracotta,它允许您集群JVM堆的一部分,将其存储在服务器阵列中,这可以是持久的.在JVM启动时,您连接到群集并可以继续使用堆的任何部分指定为群集.实际对象根据需要出现故障.