A good database backup is consistent, so the whole dump represents the state when the dumping was started. A typical strategy for this on MySQL is to lock the table, so no additional data can be written during the backup. But locking the database is a bad user experience (slow responses or even timeouts, if the dump takes lots of time). So I wonder, if Postgres has a method to make consistent backups without locking the tables.
(My current backup strategy with MySQL is to have a slave only for the backups, so the master can continue to serve the users requests while I can take a consistent dump. But that introduces other failure points, for example the replication might break)