It is
important to realize that computers may fail because of many causes; among them, we could
highlight hardware failures, cluster front-end failures, network failures, including failures that
occur in network routers, software faults, or human mistakes. Moreover, systems can become
unavailable just because of maintenance tasks needed for the hardware or the software.
One of the key aspects of every replicated solution consists of which element is to be replicated
(the replication granularity) and how consistency is going to be preserved. In this sense, the
replication granularity we chose is the complete Web application. As it is shown in Figure 3,
we define Web application as the aggregation of the Web server itself, those databases used
by the application, and any other software module and data needed to serve requests.
About consistency, roughly speaking, we adopt a strict consistency model, where every
replica will contain the same data between two client requests. Consistency will be provided
by the highly-available support, so that existing current Web applications can benefit from
availability enhancements without requiring software modifications. This approach is quite
advantageous and is one of the key distinctive properties of the system we propose.
Pages:
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551