一年多以来,我一直在运行一个充满 OSM 数据的内部 PostGIS 服务器,用于基于 Mapnik 的瓦片生成和基于 Nominatim 的地理编码,并使用日复制更新。这很好用。
然而,随着使用量呈指数级增长,我希望通过添加额外的 PostgreSQL 服务器来实现更好的可靠性和性能。我有点迷失了。
由于 PostgreSQL 似乎不能自己处理复制,我会考虑使用像 PgPool-II 这样的中间件来保持服务器同步。但恐怕对于这种用法来说,这只是必要的:非常高的读写比率,所有写入每天都在同一确切时间完成。
我的问题很简单:你会怎么做才能使这些服务器保持同步?而且,OpenStreetMap Foundation、MapQuest、Mapbox 或 CloudMade 为此做了什么?
谢谢。