Server Architectures: Multiprocessors, Clusters, Parallel Systems, Web Servers, and Storage Solutions

Before we can do any analysis of the various components of a server, we must first look at some of the application areas that servers handle. These include several different types of applications, such as:
Web server
Database access
Transaction processing systems
Decision-support systems
Distributed file services
High-performance computing
Transaction processing and decision-support applications, along with Web-serving, merit special attention. The nature of transaction-processing and decision-support applications allows us to draw parallels and comparisons between them, but Web servers are of a different nature entirely. So we will first review transaction processing and decision support applications, and then later look at the characteristics of Web servers.
We will then provide a quick review of the criteria for choosing server hardware; these criteria are further detailed and discussed in Chapter 11.
Transaction processing applications cover a significant market, being found more or less everywhere in the various branches of industry, not just in the area of business applications. [1] Decision support is a growing field: intense competition between companies means they need to better know their customers and their needs. Therefore, to anticipate their customers' needs, companies mine historical data to better make their decisions.
From the point of view of server architecture, transaction-processing and decision-support applications have characteristics that will be worthy of comments in the conclusions of this book, after different architectural options have been presented (in Chapter 12).
Table 1 (after [GRA92]) compares and contrasts the characteristics of decision support and transaction...