Microsoft introduced the Streamlined Topology concept in SharePoint 2013. It's main goal is to put all low-load services with high impact on your siteperformance to your front-end servers (e.g. ManagedMetaData Service). High-Load Services will be deployed on different servers (Search).
The "full Version" of a streamlined topology has a total of 5 server roles:
- Distributed Cache
- Specialized Workloads
This topology is oversized for most mid-range farms. I often see and install a topology with:
- Front-End (all Services including Distributed Cache - except Search)
- Batch-Processing (Search)
- SQL-Database (all Databases)
Ifyou want to be highly-available on application-level, you need two of each. So a total of 6 servers would be required. If you want to use OfficeWebApps (recommended) you need another Server.
Some more articles to read: