Extrait du cours Client Server Architectures
Information systems have evolved through several generations or eras over the past 30 years. Each new generation of technology has been accompanied by a shift in how developers think about and design systems. Each new generation changes the computing paradigm.
Historically, applications were designed based on a centralized, terminal-to-host model. These systems,popularly termed legacy systems, placed the entire set of functionality of business applications in a host main-frame computer. Business processing logic, data maintenance and reporting functions were all processed on the central mainframe. Users gained access to their systems through dumb terminals that included charac-ter-based menus and data entry screens.
A Two-Tier Architectural Model
Early client/server systems were based on a two-tier model of partitioning functionality. The two-tier architecture consists of:
• a client, often referred to as the “front-end,”responsible for application presentation and business application logic The two-tier architectural model dictates that the client and server communicate directly with each other in a highly rigid and tightly coupled relationship. While the server may be capable of handling a wide-range of database requests, the client process expects results from the server to be presented in a well-defined, pre-ordained manner.
A Three-Tier Architectural Model
The three-tier architectural model advances the two-tier model by inserting a “middle tier.”The middle tier is responsible for maintaining business logic, rules and access to data from the server.Therefore, the client process is responsible only for presentation and user interface logic. Figure 2 illustrates a typical three-tier client/server architecture.
front or back-end process, implemented as a Dynamic Link Library (DLL) or Application Program Interface (API), or accessed by Remote Procedure Calls (RPC) or messages. The major thrust here is that the middle tier provides a level of abstraction from both the client and server tiers. This abstraction creates a more loosely coupled interface between.
N-Tier Architectural Models
The n-tier architectural model describes a highly modular approach to creating client/server relationships. While this model is built upon
traditional concepts of clients and servers, the “pieces” upon which it is built are smaller and functionally specialized components that can be reused across multiple projects. The functional pieces of the two and three-tier architectural models (presentation, business application logic, and data management) are broken down even further in an n-tier model.
small pieces may be part of a larger functional piece,such as application logic, they may be referenced individually. With that in mind, the n-tier architec-tural model can be defined as a layered model, with each layer providing a specific function in the overall scope of the application. The number of layers com-prising an application depends on the requirements of the application and systems resources available. Several services are needed to span the various layers and provide cohesion between them.
Cours pdf Client/Server Architectures (1,71 Mo) (Cours PDF)