The server can serve several clients simultaneously. In this case speak about the multiuser operating mode of a server.
Despite of concept "the multiuser mode" - inquiries are carried out by a server consistently. If simultaneously comes
more than one inquiry, its are established in turn. In this case the turn is a list of outstanding client inquiries.
Inquiries can sometimes have priorities. The priority is a level of "importance" of inquiry performance. Inquiries with
higher priorities should be carried out earlier.
There is a small exception in occasion of serial processing. Operational system Windows is multitask and multiline.
Multitask is a property of operating system to execute some the user appendices (programs). It means, that on a
server some problems can be started, each of which can execute the separate inquiry. Multithreads enables to execute some
inquiries within the limits of one problem. So there is an increase in productivity of a server.
The cycle of inquiry performance consists of inquiry transfer and the answer between the client and a server and
direct performance of this inquiry on a server. Performance of complex inquiry occurs longer, than time spent for transfer
of inquiry and result of its performance. Therefore in servers systems of distribution of transactions (inquiries) between
domains of a server are applied. Transaction is a set of commands which either are carried out all or any is not carried
out. The domain is an element of a server. Quite often server at a physical level represents not one, and group of the
computers incorporated in one system for maintenance of any operations. In this case the domain is the computer entering
into architecture of a server.
Three-level client-server architecture
On top level of abstraction of the client-server precisely interaction enough it is possible to allocate
following components:
- Presentation Layer - (PL) - it is intended for work with data of the user;
- Business Layer - (BL) - it is intended for check of correctness of data, support of reference integrity;
- Access Layer - (AL) - it is intended for a data storage.
Thus, it is possible to allocate 3 types of the client-server interaction:
1. The Weak client - a powerful server.
All processing of the information is carried out entirely by a server. The server sends the ready result which is not
demanding additional processing. The client only makes inquiry, sends inquiry, accepts inquiry and displays the
information (on the printer or in a file).
Most often meeting variant of the client-server architecture realization in already introduced and actively used
systems. Such model means association in the client appendix both PL, and BL full decentralization of management business
layer, thus, is provided. However in case of need performance of any changes in the client application it is necessary to
change an initial code. The server part, at the described approach, represents the server of databases realizing AL. To
the described model often apply abbreviation RDA - Remote Data Access.
2. The strong client - a part of processing of the information is entrusted to the client.
The model beginning actively to be used in the corporate environment in connection with distribution of
Internet-technologies and, first of all, of Web-browsers. In this case the client application provides realization PL,
therefore the client can be content enough with a modest hardware platform, and the server unites BL and AL.
Simple example: the list of the firm employees, sorted on surnames is required to the user. In the first case, the
server by client inquiry takes a surname (for example, from a database) and sorts their itself. The ready sorted list is
sent the client. It is necessary for client to carry out a conclusion to the screen only. In the second case, the server
only takes surnames and sends data to the client. The client sorts the list and displays it.
But it is far not all. We shall admit, the user has wanted to sort the received list on a wage level. In the first case
the client forms new inquiry to a server, the server carries out it and sends the ready answer to the client who only
displays it. In the second case the client sorts the list itself without the reference to a server. Naturally, in the
second case the server will be less loaded.
3. Server Business Layer (three-level architecture)
Model with block BL physically allocated in the separate application, thus, it is received three-level architecture
"client-server". On a server the "universal" part business layer (rules at a level of the enterprise or group of the
connected appendices) can function. Such scheme allows to support thin clients on the user computers and at the same
time to unload a server from excessive loading at preservation of flexible system of work about business-rules.
There is one more important concept "waiting time". "Waiting time" is time through which the user, having sent inquiry
to a server, will receive from it the answer. A waiting time the most important parameter of the system productivity
realizing the concept the client-server.
At partial data processing on the client "waiting time" it is less. Less it due to simplification of inquiry and time
of its performance. Expectation in turn for execution of inquiry from here there is less.
Certainly, that time of final processing for the client can be a little above due to a difference in productivity of a
server. From here can increase some a waiting time. Finally, it is all the same more favourable, since the waiting time
in turn of inquiries on a server is less.
Many servers do not maintain loading ("pressure" of inquiries) and is simple shutdown. In that case there are two
alternative ways: increase in productivity and carry of operations part above data on the client. As a rule,
increase in productivity much more expensive operation, and too, in the sense, final. There Is only "unloading" of a
server and carry of a part of data processing on the client.
|