A Client - Server Environment
In a client-server environment, the client is used to describe both the hardware and software that access services hosted on a server. For example, an email client connects to corporate or Internet service provider (ISP) mail storage servers to retrieve email, and data stored on a server acting as a database is accessed by that servers clients.
Client software usually runs on a PC or workstations and typically accesses the server via the network—either over the local area network (LAN), wide area network (WAN) or Internet (often via a browser). In some architectures client and server can operate on the same machine. Software on an end device acts as a client for various servers.
In many cases PCs or workstations are used for both client and server, but with servers being more costly, offering more operating system features and allowing multiple simultaneous logins, and clients containing more end user-oriented software.
Clients: thick and thin
Clients are often classified by “size” as thick, thin or hybrid, based on the amount of processing work done on the client and the amount performed by the server. A thick, or “fat” client, represents the most common type of PC orlaptop where the bulk of work is done independently of the server.
On the other hand, a thin client is more similar to terminals once used with mainframes. The majority of work is done on the host server, and the thin computer provides display and input. Software processes are performed on an application server that performs data processing.
A third approach, “hybrid client” attempts to take the best of both thick and thin models. Most processes are performed on the client PC, and it offers many features of thick clients for higher performance; however, like a thin client it relies on data stored on the server, providing higher manageability and flexibility.