在这种情况下,我有两个服务器实例A和B,它们都绑定到同一个Java注册表。服务器A将是首先启动并创建注册表的人,
LocateRegistry.createRegistry(2001);
Naming.rebind("rmi://localhost:2001/A", serverInstance);
然后服务器B将在稍后启动并获取注册表。
LocateRegistry.getRegistry(2001);
Naming.rebind("rmi://localhost:2001/B", serverInstance);
现在,如果我杀了服务器B,我怎样才能检查A中B的活跃度,如果它已经死了就从注册表中删除它?
这是我尝试过的,但显然它没有用。
在服务器A中:
Remote remote;
try {
remote = registry.lookup("B");
} catch (Exception ex) {
registry.unbind("B");
}
有人能帮帮我吗?
非常感谢你。