Postgres 9.1复制 – 强制select操作到特定的从机

我已经使用1个主站和2个从站configuration了postgres备份。

Master和slave1位于美国数据中心,而slave2位于伦敦的数据中心。

有没有办法强制运行伦敦数据中心的应用程序的所有SELECT操作始终使用slave2来避免networking延迟?

谢谢,卢卡斯

想到几个方法:

  • 更改伦敦部署的应用程序configuration为连接到的主机名/ IP地址,以便连接到伦敦数据库

  • 使用split-brained DNS将相同的主机名parsing为伦敦networking中服务器的不同IP地址,以便透明地连接到所需的Pg服务器

  • 使用路由器规则来重写stream量,所以伦敦应用程序认为他们正在与美国服务器交谈,但redirect到伦敦。 如果你这样做,你的应用程序pipe理员会恨你,因为对于不知道正在debugging的人来说,这是一场噩梦。

  • 使用本地PgBouncer或PgPool-IIredirectstream量