Application partitioning is the process of segmenting application logic from the user interface and data, and running it across multiple computers on a local or wide area network (LAN or WAN). Depending on your network configuration and performance goals, you can partition your application logic among many available resources on your network.
The ability to partition an application allows common business functions or data to be managed using computing resources most appropriate for the task and at the same time make them available to clients with a variety of user interfaces. Depending on how you partition your application, you can significantly reduce network traffic, hence enhancing overall application performance.
For example, if you use a network largely dedicated to connecting many clients to business function computers (application servers) that handle all the data access and thereby shield clients from this task, you can spare the network from the bulk of increased traffic that otherwise results from passing high volumes of data between data sources and these many clients. Instead, most of the data traffic goes between the data sources and the few application servers running the business functions. These business functions then aggregate and filter the high-volume data, passing on only those data bits and records that client applications require for presentation to users.