From Wikipedia, the free encyclopedia - View original article
|This article needs additional citations for verification. (April 2007)|
A fat client (also called heavy, rich, or thick client) is a computer (client) in client–server architecture or networks that typically provides rich functionality independent of the central server. Originally known as just a "client" or "thick client" the name is contrasted to thin client, which describes a computer heavily dependent on a server's applications.
A fat client still requires at least periodic connection to a network or central server, but is often characterised by the ability to perform many functions without that connection. In contrast, a thin client generally does as little processing as possible and relies on accessing the server each time input data needs to be processed or validated.
In designing a client–server application, a decision is to be made as to which parts of the task should be executed on the client, and which on the server. This decision can crucially affect the cost of clients and servers, the robustness and security of the application as a whole, and the flexibility of the design to later modification or porting.
The characteristics of the user interface often force the decision on a designer. For instance, a drawing package could choose to download an initial image from a server and allow all edits to be made locally, returning the revised drawing to the server upon completion. This would require a thick client and might be characterised by a long time to start and stop (while a whole complex drawing was transferred) but quick to edit.
Conversely, a thin client could download just the visible parts of the drawing at the beginning and send each change back to the server to update the drawing. This might be characterised by a short start-up time, but a tediously slow editing process.
The original server clients were simple text display terminals including Wyse VDUs, and thick clients were generally not used until the increase in PC usage. The original driving force for thin client computing was often cost; at a time when CRT terminals and PCs were relatively expensive, the thin-client–server architecture enabled the ability to deploy the desktop computing experience to many users. As PC prices decreased, combined with a drop in software licensing costs, thick client–server architectures became more attractive. For users, the thick client device provided a more-responsive platform and often an improved Graphical User Interface (GUI) than could be achieved in a thin client environment. In more recent years, the Internet has tended to drive the thin client model despite the prodigious processing power that a modern PC has available.
Probably the thinnest clients (sometimes called "Ultra Thin") are remote desktop applications, for example the X Window System, Citrix products and Microsoft's Terminal Services, which effectively allow applications to run on a centrally-hosted virtual PC and copy keystrokes and screen images between the local PC and the virtual PC. Ironically, these ultra-thin clients are often used to make available complex or data-hungry applications which have been implemented as thick clients but where the true client is hosted very near to the network server.