process - 如何将正在运行的Java程序从一台机器迁移到另一台机器?

标签 process jvm runtime java

假设我有一个Java程序在机器A上运行,现在我想中断它,保存它的上下文并在机器B上恢复它的执行。可以这样做吗?怎么办?

最佳答案

不,没有好的方法可以“卡住”进程并在单独的计算机上“恢复”它,该进程可能保存着您无法随其移动的各种状态(打开文件/套接字等)。

如果您正在编写一个应用程序,最好使其可集群,然后在目标计算机上启动另一个节点,等待这两个节点同步并关闭您的原始节点。

如果它不是您正在编写的应用程序,或者上述内容太多,请在虚拟机内运行您的应用程序,并使用虚拟机的功能来迁移整个虚拟机以及其中正在运行的应用程序(因此,只需使用 vmotion)。

关于process - 如何将正在运行的Java程序从一台机器迁移到另一台机器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15893247/

相关文章:

java - 使用 AST 时 eclipse 中出现 NoClassDefFoundError

windows - 使用 Windows API 处理内存转储

BlackBerry - 获取当前进程 ID

java - 重新加载使用自定义类加载器加载的类

java - JVM 退出时是否自动释放 native 屏幕资源?

c++ - 为什么书上说 “the compiler allocates space for variables in memory” ?

c# - RedirectStandardOutput 阻止引发 Process.Exited 事件?

c# - 如何设置项目的可执行进程名?

scala - 增加 Scala 的 JVM 堆大小?

delphi - 创建安装程序时如何确保从设计时包中正确定义 Delphi 运行时包的 'requires'