在Linux系统上,我需要部署具有硬编码到应用中的外部数据和Web服务器名称的主机名的Java进程,例如, “mailserver”和“ftpserver”。在不同主机上部署时,我们当然可以使用/ etc/hosts来允许此应用程序的每个部署使用不同的远程服务器作为其“mailserver”或“ftpserver”。进程对同一主机名使用不同的IP地址
现在,我们希望将多个应用程序部署整合到一台主机上。但是,每个部署仍然需要指向它自己的“mailserver”或“ftpserver”,并且该整合主机的/ etc/hosts无法使用,因为它由应用程序的所有实例共享。
有没有一种方法可以在进程上下文中指定名称到IP的映射,而不使用/ etc/hosts甚至是DNS - 因为这些是系统范围的并且被所有进程共享?
我知道chroot会这样做,但我只是愿意将它作为最后的手段。
干杯, 狗
您可以修改Java代码,以便以合理的方式确定服务器名称吗? – 2012-03-27 21:12:45
那么,我宁愿在那个地方使用监狱。我是系统管理员,而不是开发人员。我不能为了我的生活理解他们以这种方式编写它们时的想法(没有连接池,没有配置文件来定义外部主机和URLS等) – 2012-03-27 21:38:49
如果可行,更改软件。有些人不善于处理所有简单的事情,即使在很好地理解如何做好这些事情的情况下,也可能会让事情复杂化,至少同样糟糕。 – 2012-03-27 22:11:37