Building dependable distributed systems by Wenbing Zhao

By Wenbing Zhao

"This ebook covers the main crucial strategies for designing and construction liable allotted platforms. rather than overlaying a wide diversity of study works for every dependability method, the publication focuses just a chosen few (usually the main seminal works, the main useful techniques, or the 1st booklet of every procedure) are incorporated and defined extensive, often with a accomplished set of examples. Read more...


A advisor to the basic innovations for designing and construction accountable allotted platforms. rather than masking a huge diversity of study works for every dependability method, it specializes in only Read more...

Show description

Read Online or Download Building dependable distributed systems PDF

Similar software development books

Accelerating Process Improvement Using Agile Techniques

Accelerating procedure development utilizing Agile concepts explains how agile programming is utilized to straightforward strategy development. via utilizing agile options, IT businesses can accelerate strategy development tasks, reduce the assets those projects require, and maximize the advantages of approach development.

What Computing Is All About

It is a self-contained dialogue of basic themes in machine technological know-how, along with insurance of application semantics, automata thought, software and circuit layout, concurrent courses and compilation. Formal proofs and sensible purposes are supplied during the textual content.

The Struts Framework Practical Guide for Java Programmers

Pressestimmen"I heartily advocate this e-book. seeing that an early reproduction of Sue's manuscript hit my table, it has no longer left my part and is now good thumbed and accumulating espresso stains from typical use. " Simon Chappell - Java Programming professional with a Fortune a hundred corporation. " "Sue Spielman launches the aspiring Java J2EE programmer on an exhilarating exploration of Struts dependent MVC structure and applies this data in making a state-of-the-art net program.

An Introduction to Software Engineering

This publication is an advent to software program engineering and perform addresses bothagile and plan-driven software program engineering. The e-book is very meant foran advent to software program engineering undergraduate path. The identify shows it's a partial advent simply because just one bankruptcy, an appendix on UML, bargains with layout.

Extra info for Building dependable distributed systems

Example text

Systems that are used to control operations that may cause catastrophic consequences, such as nuclear power plants, or endanger human lives, Introduction to Dependable Distributed Computing 9 such as hospital operation rooms, must bear the safety attribute. The safety attribute is not important for systems that are not operating in such environments, such as for e-commerce. 2 Means to Achieve Dependability There are two primary approaches to improving the dependability of distributed systems: (1) fault avoidance: build and use high quality software components and hardware that are less prone to failures; (2) fault detection and diagnosis: while crash faults are trivial to detect, components in a practical system might fail in various ways other than crash, and if not detected, the integrity of the system cannot be guaranteed; and (3) fault tolerance: a system is able to recover from various faults without service interruption if the system employs sufficient redundancy so that the system can mask the failures of a portion of its components, or with minimum service interruption if the system uses less costly dependability means such as logging and checkpointing.

Unfortunately, C2,1 is not consistent with C1,0 because it recorded the receiving of m4 while C1,0 does not reflect the sending of m4 . This means P2 would have to rollback to C2,0 . This in turn would make it impossible to use any of the two checkpoints, C3,1 or C3,0 , at P3 . This would result in P3 rolling back to its initial state. The rollback of P3 to its initial state would cause the invalidation of C2,0 at P2 because it reflects the state change Logging and Checkpointing 23 resulted from the receiving of m1 , which is not reflected in the initial state of P3 .

This objective can be achieved by employing standard software engineering practices, for example: More rigorous software design using techniques such as formal methods. Formal methods mandate the use of formal language to facilitate the validation of a specification. More rigorous software testing to identify and remove software bugs due to remnant design deficiency and introduced during implementation. For some applications, it may be impractical to employ formal methods, in which case, it is wise to design for testability [2], for example, by extensively use unit testing that is available in many modern programming languages such as Java and C#.

Download PDF sample

Rated 4.35 of 5 – based on 11 votes