Sometimes, when trying to improve database performance, the most practical approach is to add more copies of the data and spread the load out over them all. There are a variety of PostgreSQL projects that replicate data across multiple nodes that you might be able to use for that purpose. Also, high-performance systems tend to come with high availability requirements, plus their respective overheads, too. Learning how to co-exist with your replication software may impact your performance tuning work, even if the copies are not being used actively for load distribution.
Note that none of the mature tools mentioned in this chapter usefully support scaling up for high write volume. The best explored solution in that category is using PL/Proxy, as described in Chapter 15, Partitioning Data. Write volume scaling is also a goal of Postgres-XC. In general, when...