The first approach has notable trade-offs.1
The second approach handles scale differently.2
Both have merit depending on context.
Despite this, teams often prefer it for its flexibility.
It performs well under load but limits customization.