我继承了一个在 RHEL 上运行的 tomcat 应用程序,它连接到本地 postgres 数据库。我们总共有 8 台处于不同状态的服务器运行此应用程序。每台服务器上实际上都有两个不同的 postgres 数据库。每天我们都在一个数据库和另一个数据库之间来回切换,然后非实时数据库会被新数据替换,第二天再切换回来。
我们使用 redir 重定向应用程序中的数据库连接。通过停止 redir 并重新启动它转发新端口,我们能够指向最新数据。
问题出现在尝试停止 redir 并获取 FIN_WAIT 时,这可能会导致长达一分钟的延迟。有没有办法使用 redir 以便现有连接继续指向旧位置,而新连接指向新端口?