There's a difference between a transaction that locks for writes and one that locks for reads. By default the reading is not locked in this (common) case.
The common case is going to be many readers with a few or even a single writer. In that scenario, a read locked database would destroy any chance of operating at scale.