I would suggest you to TEST this scenario carefully before implementing it, in order to detect which resource bottlenecks (WFE CPU, BE CPU, etc) and do a good capacity planning. I would try to answer questions like
- Understand your content: is content more static or dynamic, which determines is caching characteristics?
- What's the pattern of resource consumption? Is WFE- or DB- bound? Disk or CPU?
- Mostly Read, Write, or a combination?
- Expected RPS, # of transactions/sec?
Answers to these questions will give you ideas of how to scale your deployment. For ex. if you are WFE-bound (i.e. high CPU/disk consumption in the WFE server(s)) then you may be able to e.g. add more virtual WFE servers to increase the load on the DB.
Also, I'm assuming you are not in a standalone deployment (i.e. WFE and DB in same box), because that won't scale.
And last advice - when in doubt, add RAM. It pays back more than anything else you can add to the system, more than CPU and disk.