Lesson 2: ClientServer Systems

Client/Server Architecture

The client/server architecture defines specific responsibilities for both the client and the server. By assigning specific responsibilities to both the client and the server, the program becomes a client/server application that uses distributed processing.

click to view at full size.

Figure 6.5 A client communicating with a server over a network

Distributed processing occurs when a back-end server fulfills requests made by a front-end client. The back-end server provides both data storage and processing capabilities. The front-end client makes requests to the server to perform processing actions and to return data that it is storing.

Advantages of Client/Server Systems

Advantages of a client/server system include:

  • The client/server approach is modular, and the server-based software components are small and self-contained.
  • Because each component runs in its own protected, user -mode process, a server can fail without interfering with the rest of the operating system.
  • The self-contained nature of the components makes it possible to distribute them across multiple processors on a single computer (symmetric multiprocessing) or across multiple computers on a network (distributed computing).
  • The client provides user services consisting mainly of the user interface. This service receives, displays, and edits data from the user. The client can use this data to send requests to the server. In addition, clients can be programmed to perform some processing, when appropriate, to use fewer server resources.


Microsoft Windows Architecture Training
Microsoft Windows Architecture for Developers Training Kit
ISBN: B00007FY9D
EAN: N/A
Year: 1998
Pages: 324

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net