PostgreSQL's default configuration values aren't suitable for a production environment; several default values are often undersized. In developing PostgreSQL applications, it's a good idea to have a test system that's configured very closely to a production environment to get accurate performance measures. In any PostgreSQL environment, the following configuration should be reviewed. For example, it's very useful to have a staging server similar in setup to the production server, especially the following properties:
- Server hardware or virtualization
- Operating system configuration and tweaks
- PostgreSQL version
- PostgreSQL configuration