Divides Application Processing across multiple machines.Non-critical data and functions are processed on the client Critical functions are processed on the server
Optimizes Client Workstations for data input and presentation (e.g., graphics and mouse support)
Optimizes the Server for data processing and storage (e.g., large amount of memory and disk space)
Scales Horizontally – Multiple servers, each server having capabilities and processing power, can be added to distribute processing load.
Scales Vertically - Can be moved to more powerful machines, such as minicomputer or a mainframe to take advantage of the larger system’s performance
Reduces Data Replication - Data stored on the servers instead of each client, reducing the amount of data replication for the application.