In the Real World, web apps can get complicated. A popular web site can get hundreds of thousands of hits per day. To handle this kind of volume, most big web sites create complex hardware architectures in which the software and data is distributed across many machines.
A common architecture you’re probably quite familiar with is configuring the hardware in layers or “tiers” of functionality. Adding more computers to a tier is known as horizontal scaling, and is considered one of the best ways to increase throughput.
Most of the software for a big web application lives in either the “Web Tier” or the “Business Tier”.