你的问题...
两台服务器相距多远?
如果距离很远,即使使用 100Mbit/1Gbit 连接,延迟也会削弱您的 MySQL 连接,并且这种延迟很可能是导致您出现奇怪问题的原因。这也将影响 Memcache 将提供的任何好处(如果您使用远程 Memcache 实例),几乎是毁灭性的。如果有的话,你应该在每台服务器上运行一个 Memcache 实例。
您是否通过 SSH 建立了 MySQL 隧道(Xinetd/持久 SSH 隧道等)?
安全性很好,但压缩会增加开销。还要记住,使用 Xinetd 会增加连接打开/关闭的额外延迟。
如果不通过隧道传输 - 您会发送敏感的纯文本数据,从而使您的商店和您的客户面临风险。
最佳和最简单的解决方案
嗯,我最初的建议是不要在两个不同的主机上运行商店。而是找到一个主机,它可以在两个不同的子网上为您提供一个 IP,在同一个数据中心提供(我假设您的客户关心的是 IP 地理位置)。然后你可以保留 1 个代码库。
如果没有两个不同的 IP 范围,我只会告诉您的客户观看此内容,即使 Google 表示 IP 地址位置与 SERP 无关。
http://www.youtube.com/watch?v=keIzr3eWK8I&noredirect=1
更复杂的解决方案
如果您使用的是单个远程数据库服务器,那么在服务器全球多样化的情况下运行分布式存储会带来许多问题(即速度)。
建议确保您的数据库服务器与服务于您的主要市场的网络服务器位于同一站点;然后在您的二级市场中拥有第二台网络服务器。
然后,在您的辅助 Web 服务器上,配置一个 MySQL 从属实例并指示 Magento 在本地(从从属服务器)执行所有读取并写入远程服务器。您会导致写入延迟,从属更新也会有相同的情况 - 但这是最令人满意的解决方案(如果您坚持以复杂的方式处理它)。
在两个 Web 服务器前使用 Varnish 实例将有助于缓冲任何性能问题,并为您的最终用户提供全方位的愉悦体验。
当解决面向多个全球市场并坚持使用单一管理商店视图(而不是在单个 ERP 系统中的多个“馈线”商店)的 Enterprise Magento 商店时,我们将使用这种部署类型。